Introduzir a programação de computadores e suas aplicações através do estudo de uma linguagem algorítmica e de exercícios de programação.
Programa Resumido: Algoritmos e estruturas de dados elementares. Recursão. Prática de programação.
Algoritmos e conceitos básicos: tipos primitivos, variáveis, atribuições e expressões; comandos condicionais e laços; entrada/saída padrão e saída gráfica; vetores, matrizes e strings; funções, bibliotecas e clientes; recursão e backtracking. Noções de prova de correção e complexidade de algoritmos. Extensa prática de programação e depuração de programas.
1. R. Sedgewick, K. Wayne, Introduction to programming in Java: an interdisciplinary approach, Addison-Wesley, 2008. 2. R. Sedgewick, K. Wayne, R. Dondero, Introduction to programming in Python: an interdisciplinary approach, Addison-Wesley, 2015. 3. R. Sedgewick, K. Wayne, Computer science: an interdisciplinary approach, Addison-Wesley, 2016 4. P. Feofiloff, Algoritmos em Linguagem C, Elsevier, 2009.