Programação de Computadores II – UFF 2019/2 – Prof. Raphael Machado

Bem-vindo à página da turma 2019/2 do curso de Programação de Computadores II da Universidade Federal Fluminense, ministrado pelo Prof. Raphael Machado. Aqui você encontrará informações práticas a respeito do curso.

Objetivo: Apresentar/consolidar conceitos de programação utilizando a linguagem de programação C. Os tópicos estudados serão os seguintes:

  • Registros e Tipos
  • Procedimentos e Funções
  • Passagem por Valor e por Referência
  • Escopo e Variáveis Globais
  • Recursão
  • Bibliotecas e String
  • Tipo Abstrato de Dados
  • Modularização
  • Memória e Endereço
  • Ponteiro
  • Alocação Dinâmica
  • Lista Ligada
  • Fila e Pilha
  • Arquivos

Horário das aulas: segundas-feiras e quartas-feiras de 18:00 a 20:00.

Local das aulas: Instituto de Computação da UFF
Aulas teóricas às segundas-feiras na sala 217.
Aulas práticas às quartas-feiras no laboratório 306.

Período de aulas: 12 de agosto a 16 de dezembro de 2019.

Datas das provas:

  • Primeira Prova (P1): 30-set
  • Segunda Prova (P2): 25-nov
  • Verificação de Reposição (VR): 2-dez
  • Prova Suplementar (VS): 9-dez

Listas de Exercícios. Ao longo do curso, serão disponibilizadas listas de exercícios por meio do sistema URI Online Judge. O resultado obtido na execução dos exercícios das listas irá compor a nota T.

Regras:

  • Provas básicas: Prova 1 (P1) e Prova 2 (P2) -> Fortemente recomendado que o aluno faça as duas provas.
  • Trabalho (T): Nota de 0 a 10 alcançada pelo aluno após a execução das listas e atividades propostos ao longo do curso.
  • Verificação de Reposição (VR). O aluno pode escolher por fazer a VR, que irá obrigatoriamente substituir a menor nota entre P1 e P2. A VR funciona como segunda chamada.
  • Média das Provas (MP):
    • Caso não tenha feito VR: MP = (P1+P2)/2
    • Caso tenha feito VR: MP = (max{P1,P2}+VR)/2
  • Média final (MF):
    • Graduação: MF = MP + 0,1*T
  • Alunos com 4<=MF<6 podem fazer Verificação Suplementar (VS)
  • Média Suplementar (MS): média final após VS
    • MS = VS
  • A média será dada por M = 0,5*P1 + 0,5*P2 + 0,1*T

Material complementar de estudo.

Listas de Exercícios

Aulas

Aula 1 (12-ago-2019). Apresentação do curso; programação básica; comandos básicos em C.

Aula 2 (14-ago-2019). Comandos em C. Desenvolvimento de código junto aos alunos. Ambiente de edição e compilação de programas. Saída de dados na tela (printf). Passando argumentos para o programa (argc e argv). Programas simples com estruturas de iteração (for) e de decisão (if).

Aula 3 (19-ago-2019). Funções em C. A diretiva #define. Algoritmos de busca básicos e implementação em C. Noções de complexidade de algoritmos.

NÃO HÁ AULA NO DIA 21-AGO-2019

Aula 4 (26-ago-2019). Continuação do tema: algoritmos de busca básicos e implementação em C. Biblioteca time.h. Números aleatórios.

Aula 5 (28-ago-2019) – Laboratório. Análise experimental de algoritmos de busca.

NÃO HÁ AULA NO DIA 02-SET-2019

NÃO HÁ AULA NO DIA 04-SET-2019

Aula 6 (09-set-2019). Recursão. Exemplos básicos: fatorial e Fibonacci. Árvore de chamadas. O algoritmo MergeSort de ordenação.

Aula 7 (11-set-2019). Implementação e análise experimental do MergeSort.

Aula 8 (16-set-2019). Funções, ponteiros.

Aula 9 (18-set-2019). Exercícios de revisão no laboratório.