Programação de Computadores / Programação de Computadores I -- Python
Ementa:
Introdução à Programação: conceitos fundamentais de algoritmos, etapas de desenvolvimento e lógica computacional.
Variáveis e Tipos de Dados: representação de dados, leitura e escrita, expressões aritméticas e relacionais.
Estruturas de Controle: comandos condicionais, operações lógicas, loops while e for, instruções break e continue.
Strings e Estruturas de Dados: manipulação de strings, listas, matrizes, tuplas e dicionários.
Subprogramação: criação e uso de funções, escopo, passagem de parâmetros, modularização.
Recursividade: definição, aplicações e análise de chamadas recursivas.
Algoritmos Fundamentais: algoritmos de busca, algoritmos de ordenação (Bubble Sort, Selection Sort, Merge Sort, Quick Sort).
Manipulação de Arquivos: leitura, escrita e uso de parâmetros do programa.
Noções de Complexidade: análise básica de custo computacional e eficiência de algoritmos.
Bibliografia:
Dasgupta, S., Papadimitriou, C. H., Vazirani, U. Algorithms. Science Engineering & Math, 2007
Szwarcfiter, J. L., Markenzon, L. Estruturas de Dados e Seus Algoritmos, LTC Editora; Edição: 3, 2010
Cormen, T. H., Leiserson, C. E., Rivest, R. L., Stein, C. Introduciton to Algorithms. The MIT Press. 2009
Guttag, John V. Introduction to Computation and Programming Using Python. The MIT Press. 2016
Deitel, Harvey; Deitel, Paul; Liperi, Jonathan; Wiedermann, Ben. Python: How to Program. Pearson. 2002
Slides - Todo o curso:
- Aula 0 - Apresentação do curso
- Aula 1 - Bases da Programação
- Aula 2 - Variáveis, Tipos de Dados, Escrita e Leitura
- Aula 3 - Operações e Expressões Relacionais
- Aula 3.1 - Exercícios – aulas 1 até 3
- Aula 4 - Comandos Condicionais e Manipulação de Strings com split()
- Aula 4.1 - Exercícios – até aula 4
- Aula 5 - Comandos Repetitivos
- Aula 5.1 - Exercícios – aula 5
- Aula 6 - Listas
- Aula 6.1 - Maratona 1 - Exercícios até aula 6 e Gabarito
- Aula 7 - Strings
- Aula 7.1 - Questões em Bioinformática - Nível Básico (exercícios até Aula 7) e Gabarito
- Aula 8 - Matrizes
- Aula 9 - Subprogramação
- Aula 9.1 - Exercícios sobre Subprogramação
- Aula 10 - Algoritmos de Busca e noções de Complexidade
- Aula 11 - Algoritmos de Ordenação: Selection Sort, Bubble Sort e Insertion Sort
- Aula 12 - Recursividade
- Aula 13 - Algoritmos de Ordenação: MergeSort e QuickSort
- Aula 13.1 - Maratona 2 - Exercícios até aula 13 e Gabarito
- Aula 14 - Tuplas e Dicionários
- Aula 14.1 - Maratona 3 - Exercícios até aula 14 e Gabarito
- Aula 15 - Arquivos, parâmetros do programa
- Aula 15.1 - Maratona 4 - Exercícios até aula 15 e Gabarito
Se você tem alguma dúvida ou sugestão, sinta-se à vontade em me mandar uma mensagem. email.