Introdução à Programação
CC111

Objectivos
Introduzir os conceitos elementares de programação imperativa enfatizando a noção de algoritmo e de modularidade. Pretende-se que os estudantes:
• sejam capazes de conceber algoritmos para resolução de problemas simples e de os implementar na linguagem de programação C
• fiquem a conhecer alguns algoritmos básicos (contagem, pesquisa, ordenação)
• adquiram bons hábitos de programação
Programa
1 Noções de algoritmo e de programa de computador.
2 Construtores fundamentais de programação: valores, variáveis e expressões; tipos de dados básicos: números inteiros e de vírgula flutuante; carateres.
3 Expressões condicionais e de ciclos básicos (for/while); I/O simples. Instruções de escolha.
4 Definição de procedimentos e funções; âmbito de variáveis (locais/globais).
6 Tipos compostos: variáveis indexadas, listas ligadas e tuplos.
7 Recursividade; resolução de problemas simples usando algoritmos iterativos e recursivos.
8 Estratégia "dividir para conquistar"; exemplos com algoritmos de ordenação e pesquisa. Decomposição de problemas em procedimentos.