MAC2166 Introdução à Computação
[Edição do 1o. Semestre de 2026]
(Página eternamente minimal e em mutação)
Sinopse das aulas
Março
- Apresentação da disciplina. Compiladores etc.
Introdução à linguagem C. O tipo
int - Argumentos de linha de comando. Entrada padrão e
saída padrão. Laço
while - Laço
while(cont.). Comandos de seleçãoifeif/else. Comparações entre números. Expressões aritmética de inteiros - Laços com
for. O valor devolvido porscanf. Redirecionamento destdoutpara arquivo. Redirecionamento de arquivo parastdin. Piping. O tipodouble. Média de uma lista de inteiros - O valor
EOFdevolvido porscanf. As funçõessranderand. Exemplo de uso de "moldura de tipo" (type cast). O algoritmo de Euclides - O algoritmo de Euclides (cont.). Primalidade
- Comentário sobre o algoritmo de Euclides.
Primalidade (cont.). A noção de "indicador de passagem". O tipo
bool, os valores booleanostrueefalsee o header filestdbool.h. Fatoração. O uso debreakecontinue. [Se tivermos tempo: comentários sobre o viés dos números gerados porrandom_seq_mod.cquandoMé grande. Versão sem viés:random_seq_deluxe.c, que implementa um algoritmo levemente modificado (não tivemos tempo)] - Funções em C. Primalidade e fatoração (cont.). Datas e calendários
- Semana Santa
Abril
- Semana Santa
- Datas e calendários (cont.). Exercícios
- Prova 1: das 8:00 às 10:00; anfiteatro vermelho e mais outra sala
- Não haverá aula (professores das Turmas 1, 2 e 3 no LATIN 2026)
- Não haverá aula (professores das Turmas 1, 2 e 3 no LATIN 2026)
- Ponte Tiradentes
- Números em ponto flutuante
- Números em ponto flutuante (cont.). Ponteiros. Funções com endereços como argumento
- Funções com endereços como argumento (cont.). Caracteres ASCII
Maio
- Mais exercícios com caracteres ASCII. Arrays (vetores)
- Arrays (cont.). Arrays e funções
- Algoritmo de busca binária. Bit vectors. Algoritmos de ordenação: ordenação por inserção e intercalação (insertion sort e mergesort)
- Algoritmos de ordenação: ordenação por inserção e intercalação (cont.). Eliminação de repetições (algoritmo \(N\log N\))
- Aula cancelada (greve estudantil)
- Prova 2 adiada (greve estudantil)
- Provas de outras disciplinas (sem aula de MAC2166). Dia prejudicado pela greve estudantil
- Eliminação de rpeetições (algoritmo \(N\log N\); cont.). Alocação dinâmica de memória
- Alocação dinâmica de memória (cont.)
Junho
- Exercícios
- Prova 2: das 8:00 às 10:00 [versão A | B | C | D]
- Não haverá aula (Alunos em prova)
- Alocação dinâmica de memória (cont.). Matrizes (arrays 2D)
- Matrizes (arrays 2D, cont.). Manipulação de imagens
- Manipulação de imagens (cont.)
- Manipulação de imagens (cont.)
- Recursão. Backtracking. O problema das \(N\) rainhas; Sudoku (comentários)
- Material sobre alocação dinâmica (e muitas outras coisas): veja este sítio (em particular, veja esta página) do Professor Paulo Feofiloff. Exercícios
- Prova 3: das 8:00 às 10:00