CI1055-C - Algoritmos e Estrutura de Dados I

1º ciclo - periodo especial - 2020


Aulas

Aulas inicias do prof. Marcos Castilho: Material das aulas:

# DATA SLIDES VIDEOS ASSUNTO REF. BIB. EXERCÍCIOS
0 13/jul (pdf) Hello World! (aula de apresentação)
1 15/jul (pdf) (1.a) Elementos de programas. Soma de dois números. Sec. 5.1, 5.2 e 5.3 Todos os exercícios
da Seção 5.10.1
(1.b) Compilando e executando programas. Sec. 5.4
(1.c) Atribuições e expressões aritméticas Sec. 5.5
(1.d) Imprimindo sequência de números. Incremento. Sec. 5.5.1 e 5.7 (início)
(1.e) Ferramentas de compilação e edição de códigos-fontes Sec 5.4
2 17/jul Aula Síncrona
3 20/jul (pdf) (3.a) Repetição de Comandos. Limitação das variáveis. Sec. 5.7 Exercícios das Seções 5.10.2,
5.10.3, 5.10.4, 5.10.5, 5.10.6.
Exercícios complementares
da Seção 5.11.
(3.b) Expressões Booleanas Sec. 5.6
(3.c) Exemplo dos Quadrados de Números. Indentação. Sec. 5.7.1 e 5.7.2
(3.d) Problemas mal definidos. Critérios alternativos
de parada da repetição. Comentários em Pascal.
Sec. 5.7.3
(3.e) Desvios condicionais (if-then-else).
Warnings e notes do compilador.
Sec. 5.8
4 22/jul (pdf) (4.a) Soma de N números. Sec. 6.1 , 6.2 e 6.3.1. Todos do Cap. 6
(4.b) Soma de números até digitar 0 Sec. 6.3
(4.c) Imprimir quadrados condicionalmente. Sec. 6.7 e 6.8
(4.d) Contar positivos e não-positivos.
(4.e) Soma separada de pares e ímpares.
(4.f) Testando múltiplos de números.
5 24/jul Aula síncrona
6 27/jul (pdf) (6.a) if-else aninhados. Sec. 6.4 Todos do Cap. 6
(6.b) Menor número. Sec. 6.5
(6.c) Vários acumuladores. Sec. 6.9
(6.d) Conta dígitos. Sec. 7.1
7 29/jul (pdf) (7.a) Conversão decimal p/ binário. Sec. 7.2 Todos do Cap. 7
(7.b) Conversão decimal p/
binário - versão 2.
Sec. 7.2
(7.c) Colocando programas feitos
dentro de laço.
(7.d) Laços aninhados. Tabuada. Sec. 7.4
(7.e) Fatorial. Sec. 7.5
(7.f) Fatorial de 1 a n. Sec. 7.5
(7.g) Fatorial de 1 a n
- versão mais eficiente.
Sec. 7.5
8 31/jul Aula Síncrona
9 03/ago (pdf) (9.a) Primos - algoritmos simples. Sec. 7.11 Todos do Cap. 7
(9.b) Primos - melhoria. Sec. 7.11
(9.c) Primos - ainda melhor. Sec. 7.11
(9.d) Fibonacci, razão aurea. Sec. 7.6
(9.e) Número e, séries. Sec. 7.8.1
10 05/ago (pdf) (10.a) Seno. Sec. 7.8.2
(10.b) Maior Segmento Crescente. Sec. 7.9
11 07/ago Aula síncrona
12 10/ago (pdf) (12.a) Motivação e Variáveis Globais. Sec. 8.1, 8.2.3 Todos do Cap. 8
(12.b) Funções. Sec. 8.2.4
(12.c) Passagem de Parâmetros. Sec. 8.2.5
(12.d) Procedimentos. Passagem de Parâmetros
por Valor e por Referência. Variáveis Locais.
Sec. 8.2.5 a 8.2.8
12/ago PROVA 1
13 14/ago Aula Síncrona
14 17/ago (pdf) (14.a) Mdc: definição Sec. 7.11 (Apêndice) Todos do Cap. 8
(14.b) Mdc: algoritmo baseado na definição. Sec. 7.11 (Apêndice)
(14.c) Mdc: usando funções. Sec. 8.3.4
(14.d) Mdc: algoritmo de Euclides. Sec. 7.3
15 19/ago (pdf) (15.a) Vetores: conceito e declaração. Sec. 9.1 e 9.2 Todos do Cap. 9
(15.b) Vetores: lendo e imprimindo. Sec. 9.3
(15.c) Vetores: uso em funções. Sec. 9.3
(15.d) Vetores: imprimindo contrário e pares. Sec. 9.3
(15.e) Vetores: menor número. Sec. 9.3
16 21/ago Aula Síncrona
17 24/ago (pdf) (17.a) Soma de vetores e produto escalar. Sec. 9.4 Todos do Cap. 9
(17.b) Busca em vetores. Sec. 9.5
(17.c) Busca em vetores ordenados. Sec. 9.5
(17.d) Busca binária. Sec. 9.5
(17.e) Busca binária: tempo de execução. Sec. 9.5
18 26/ago (pdf) (18.a) Removendo e inserindo em vetor ordenado. Sec. 9.5.1
(18.b) Ordenação por seleção (SelectionSort) Sec. 9.6.1
(18.c) Análise do SelectionSort Sec. 9.6.1
19 28/ago (pdf) Aula Síncrona (Bubblesort)
31/ago PROVA 2
20 02/set (pdf) (20.a) Matrizes: motivação. Sec. 10.1 Todos do Cap. 10
(20.b) Matrizes: declarar, carregar e imprimir. Sec. 10.1 e 10.2.1
(20.c) Matrizes: transposta e outras operações. Sec. 10.2.1
21 04/set Aula Síncrona
22 04/set (pdf) (22.a) Matrizes: soma e multiplicação. Sec. 10.2.3 e 10.2.4 Todos do Cap. 10
(22.b) Matrizes: menor, busca, repetidos. Sec. 10.2.2 e 10.3
23 09/set (pdf) (23.a) Imagem como matriz. Arquivos PGM. Sec. 10.5 Todos do Cap. 10
(23.b) Imagens em Pascal, clarear imagens. Sec. 10.5
(23.c) Clareando imagem: exemplo prático. Sec. 10.5
(23.d) Imagens coloridas, zoom out. Sec. 10.5
(23.e) Zoom out: exemplo prático. Sec. 10.5
(23.f) Detecção de bordas. Sec. 10.5
(23.g) Detecção de bordas: exemplo prático. Sec. 10.5
24 11/set Aula Síncrona
25 14/set (pdf) (25.a) Registros: introdução. Sec. 11.1 e 11.2 Todos do Cap. 11
(25.b) Registros: vetores. Sec. 11.3
26 14/set (pdf) (26.a) TAD: intro, TAD conjuntos. Sec. 12.1 Todos do Cap. 12
(26.b) TAD conjunto: exemplo de uso e implementação. Sec. 12.1.1 e 12.1.2
(26.c) TAD conjunto: implementação. Sec. 12.1.2