O objetivo desta apostila é introduzir o conceito de algoritmos(seção 2) e principalmente, apresentar algumas dicas sobre
como deduzir um algoritmo que resolva um dado problema. Para isto iremos introduzir comandos nas linguagens
C e Python. Iremos deduzir algoritmos a partir de alguns problemas/exemplos.
Esta dedução será construtiva: começaremos anaisando casos particulares e só então generalizaremos na forma de um algoritmo. E como uma técnica
auxiliar, propomos ao programador iniciante que tente consturir seus algoritmos a partir de quatro questões básicas descritas na seção 3.
Um algoritmo é uma sequência de passos elementares, executados um após o outro seguindo o fluxo de execução (de cima para baixo)
Em geral, um algoritmo deve ser aplicado sobre um conjunto de valores para produzir um outro conjunto de valores como resposta.
Uma característica que um algoritmo deve apresentar é ser determinístico: sempre que este for aplicado sobre o mesmo conjunto de entradas
deverá produzir sempre a mesma saida
Nos exemplos utilizaremos quatro tipos de conceitos: