A disciplina MAC110 tem dois objetivos fundamentais, o primeiro é
introduzir a resolução de problemas de forma algoritmica e o segundo é
como codificar esta solução em alguma linguagem de programação.
A dificuldade da primeira parte, em geral, é devido a necessidade de
formalismo (encontrar, ao menos intuitivamente, os "invariantes do
algoritmo"), enquanto que na segunda, com frequência os alunos
iniciantes na "arte da programação", sentem dificuldade em respeitar as
regras rígidas das linguagens de programação.