Algoritmos e Programação de Computadores
Bem vindo(a)!
Esta é a página do curso de Algoritmos e Programação de Computadores da UFAL-Arapiraca ofertado no curso de Ciência da Computação. Este curso possui um objetivo único: ensinar a programação para computadores.
O curso utilizará a Linguagem Python como objeto e ferramenta de estudo. Isso não quer dizer, que você só deve aprender Python. Pelo contrário. O curso de Ciência da Computação é direcionado para que o aluno possa aprender o que há de geral nas várias linguagens de programação e que continue aprendendo novas linguagens. Afinal, ao longo do curso diversas linguagens de estudo serão utilizadas. Assim, o curso foca mais nos conceitos e boas práticas de programação de modo geral, do que nas soluções específicas que são implementadas com a linguagem Python.
O curso está organizado em uma série de exercícios que refletem problemas cotidianos. Cabe aos alunos desenvolverem soluções adequadas para estes problemas de acordo com as questões aprendidas no curso. Mas, lembre-se: nunca se limite a estudar os assuntos abordados em sala de aula. Um bom programador tem que ir além. Neste caso, ser curioso e perseverante são virtudes interessantes para um bom programador.
Ao final do curso, os alunos devem desenvolver um projeto final que será publicado neste site para todo o mundo. Os melhores projetos serão utilizados como exemplos nos eventos do curso.
Bom trabalho a todos! 🙂
Ementa
Conceitos e técnicas de programação básica. Valores, variáveis e expressões. Programas, estruturas de repetição e seleção. Funções e recursividade. Estrutura de dados: matrizes, listas, tuplas e conjuntos. Manipulação de cadeias de caracteres. Manipulação de arquivos. Boas práticas de programação. Documentação. Testes.
Bibliografia
- CORMEN, Thomas H. et al. Algoritmos: teoria e prática. 2. ed. Rio de Janeiro: Elsevier, 2002. ISBN 9788535209266.
- KNUTH, Donald E. The art of computer programming. 3. ed. Reading: Addison-Wesley, 1997. 1 v. ISBN 0201896834.
- PEREIRA, Silvio do Lago. Estruturas de dados fundamentais: conceitos e aplicações. 12. ed. São Paulo: Érica, 2009. 238 p. ISBN 9788571943704.
- DOWNEY, Allen B. Python for software design: how to think like a computer scientist. New York: Cambridge University Press, 2009. 251 p. ISBN 9780521725965.
- EVARISTO, Jaime. Aprendendo a programar: programando em linguagem C. Rio de Janeiro: Book Express, 2001. 205 p. ISBN 8586846813.
- DEITEL, Harvey M.; DEITEL, Paul J. C++ como programar. 5. ed. São Paulo: Pearson Prentice Hall, 2006. 1163 p. ISBN 8576050560.
- PILGRIM, Mark. Dive into Python: a guide to the python language. Lexington, Kentucky: Soho Books, 2009. 322 p. ISBN 9781441413024.
- ARAÚJO, Everton Coimbra de. Algoritmos: fundamentos e prática. 3. ed. Florianópolis, SC: Visual Books, 2007. 414 p. ISBN 8575022091.
Material das Aulas
- Apresentação da Disciplina
- Semana 01: Algoritmos e Diagrama de Blocos
- Semana 02: Linguagens de Programação e Introdução ao Python
- Semana 03: Erros, Valores, Variáveis, Entrada Manual e Operações Matemáticas
- Semana 04: Funções
- Aula 05: Expressões Lógicas, Condicionais e Recursão
- Aula 06: Repetição com o comando While
- Aula 07: Repetição com o comando For
- Aula 08: Operações com Strings
- Aula 09: Listas
- Aula 10: Tuplas
- Aula 11: Dicionários
- Aula 12: Arquivos e Exceções
- Aula 13: Classes e Objetos