MC102

Algoritmos e Programação de Computadores

Objetivos
Aulas Atendimento Avaliação Trabalhos Bibliografia Calendário FAQ Alunos Notas

Contatos

Professor:
Rodolfo Jardim de Azevedo
rodolfo

@ic.unicamp.br
Monitor:
Luis Augusto Angelotti Meira luis.meira

Avisos
Data
Aviso
21/06
As notas da prova já estão no quadro de notas. As faltas serão computadas no dia 23/06 pela manhã e também colocadas lá. A revisão da terceira prova será no dia 23/06 das 10:00-11:00 e das 17:00-19:00 na sala 8 do IC2.
05/06/03
Atividade 08 adiada para 06/06. Atividade 09 disponível.
05/06/03
Sexta lista de exercícios atualizada.
05/06/03
Material sobre conversão de Pascal para C disponível.
29/05/03
Sexta lista de exercícios disponível.
29/05/03
Quadro de notas atualizado.
20/05/03
Resultado da segunda prova já está no quadro de notas. Exemplo de solução: Q1 (frente, verso), Q2, Q3, Q4.
29/04/03
Quinta lista de exercícios disponível.
15/04/03
Quarta lista de exercícios disponível.
08/04/03
Resultado da primeira prova já está no quadro de notas.
26/03/03
Terceira lista de exercícios disponível.
21/03/03
Segunda lista de exercícios disponível.Você também pode fazer a lista 3 da página de notas de aula.
19/03/03
Cada aluno deve ter três senhas: Uma para a porta dos laboratórios,  uma para os computadores e uma para o Susy. As duas primeiras devem ser pegas no SIFEEC (sala LE21). A senha do Susy deve ser pega com o monitor (envie um email para ele pedindo caso ainda não tenha). Todas as senhas são pessoais e intransferíveis.
14/03/03
Página dos Laboratórios já disponível.
11/03/03
Primeira lista de exercícios disponível. Você também pode fazer as listas 1 e 2 da página de notas de aula.
06/02/03
Apostila deixada na Xerox do DCE.
20/02/03
Laboratório confirmado: LE22A/B.
19/02/03
Cópia online da folha de Informações sobre a Disciplina entregue no primeiro dia de aula.
19/02/03
Sala para aulas teóricas confirmada: FE23.
14/02/03
Turbo Pascal 5.5 e Turbo C 2.01: Download gratuito através do site Borland Development Network Museum (http://bdn.borland.com/museum/).

Objetivos

Nessa disciplina serão estudados:
  • Introdução à Computação
  • Algoritmos e Programas
  • Linguagens Pascal e C

Ementa: Fundamentos de algoritmos e sua representação em linguagens de alto nível. Estudo pormenorizado de uma ou mais linguagens. Desenvolvimento sistemático e implementação de programas. Modularidade, depuração, testes e documentação de programas.

Aulas

Terça: 21:00 - 23:00 (FE23)
Quinta: 19:00 - 21:00 (FE23)
Sexta: 19:00 - 21:00 e 21:00 - 23:00 (LE22A/B)

Atendimento

Rodolfo (professor): Terça: 19:30 - 20:30 - Sala 8 do IC
Luis Augusto (monitor): Segunda: 18:00 - 19:00 e Quarta: 18:00 - 19:00. Sala 42 do IC



Avaliação

A avaliação consistirá na nota de 3 provas (P1, P2 e P3) e em uma nota de laboratório (NL). A média (M) do aluno será calculada da seguinte forma:
  • M = (2 * P1 + 3 * P2 + 4 * P3 + NL) / 10
Os alunos com média (M) inferior a 5 deverão fazer o exame (E). A nota final (NF) do aluno será então:
  • M, se M ≥ 5
  • (M + E) / 2, caso contrário

Laboratórios

Toda aula de laboratório possuirá uma atividade que os alunos deverão completar até o final da aula e entregar ao professor/monitor.
Cada atividade entregue será avaliada e ao final do semestre, a nota de laboratório do aluno será:
  • NL= L / N
onde
  • NL é a nota de laboratório (entre 0,0 e 10,0)
  • L é o número de atividades de laboratórios corretas entregues
  • N é o número total de atividades de laboratório
Consulte a Página dos Laboratórios para ver as atividades programadas.


Bibliografia
  • Pascal
    • Keller, A.: A First Course in Computer Programming Using Pascal. McGraw-Hill 1982
    • Cooper, D., Clancy, M.: Oh! Pascal!. W. W. Norton 1982
    • Farrer, H.: Pascal Estruturado. Guanabara Dois 1985
    • Schildt, H.: Turbo Pascal Avançado - Guia do Usuário - 4.0 e 5.0 McGraw-Hill 1989
    • Gottfried, B.: Programação em Pascal. McGraw-Hill 1994
    • Jensen, K., Wirth, N.: Pascal ISO - Manual do Usuário e Relatório. Campus 1988
    • Kemp, R.: Pascal for Students. Edward Arnold 1982
    • Lamb, R.: Pascal: Structure and Style. Benjamin/Cummings 1986
    • Lamie, L.: Pascal Programming. John Wiley & Sons 1987
    • Gottfried, B.: Programação em Pascal McGraw-Hill 1994
  • C

Calendário

Fevereiro
Dia Matéria
18T
Aula 1: Apresentação do Curso. Noções de Algoritmos e Programas. Informações sobre a Disciplina.
20Q
Aula2: Reapresentação do Curso. Primeiro programa em Pascal. Introdução a Procedimentos.
21S
Laboratório 1: Apresentação do Ambiente Turbo Pascal.
25T Aula3: Variáveis e tipos. Laços FOR.
27Q
Aula4: Continuação de laços (FOR), tipos de dados. Comandos de entrada de dados.
28S
Laboratório 2: Programas com laços.
Março
Dia Matéria
06Q
Aula 5: Laços FOR com DOWNTO e instrução condicional IF.
07S
Laboratório 3: Programas com laços e instruções condicionais.
11T
Aula 6: Laços WHILE e REPEAT. Operadores Booleanos.
13Q
Aula7: Tipos enumerados, conversão de tipos. Comando CASE.
14S
Laboratório 4: Primeira atividade com o Susy. Veja a Página dos Laboratórios. Atividade 00.
18T
Aula8: Constantes. Vetores. Algoritmo de ordenação.
20Q
Aula9: Ordenaçao. Busca Binária.
21S
Laboratório 5: Atividade 01.
25T
Aula10: Matrizes.
27Q
Aula11: Procedimentos e Funções. Passagem de parâmetro por valor.
28S
Laboratório 6: Atividade 02.
Abril
Dia Matéria
01T
Aula 12: Exercícios.
03Q
Aula 13: Prova 1
04S
Laboratório 7: Atividade 03.
08T
Aula 14: Passagem de parâmetros por referência. Entrega das provas.
10Q
Aula 15: Registros. Funções de manipulação de strings.
11S
Laboratório 8: Atividade 04.
15T
Aula 16: Recursão
17Q
Feriado
18S
Feriado
22T
Aula 17: Recursão
24Q
Aula 18: Funções e Procedimentos como parâmetros
25S
Laboratório 9: Atividade 05.
29T
Aula 19: Arquivos texto
Maio
Dia Matéria
01Q
Feriado
02S
Feriado
06T
Aula 20: Exercícios
08Q
Aula 21: Prova 2
09S
Laboratório 10: Atividade 06
13T
Aula 22: Ponteiros e Alocação Dinâmica
15Q
Aula 23: Tipos recursivos
16S
Laboratório 11: Atividade 06
20T
Aula 24: Arquivos Binários, entrega da prova 2
23Q
Aula 25: Exemplos e exercícios
23S
Laboratório 12: Atividade 07
27T
Aula 26: Introdução à Linguagem C
29Q
Aula 27: Introdução à Linguagem C
30S
Laboratório 13: Atividade 08
Junho
Dia Matéria
03T
Aula 28: Introdução à Linguagem C
05Q
Aula 29: Introdução à Linguagem C
06S
Laboratório 14: Atividade 09
10T
Aula 30: Reposição / Exercícios
12Q
Aula 31: Reposição / Exercícios
13S Laboratório 15: Atividade 10
17T Aula 32: Prova 3
Julho
Dia
Matéria
01T
Exame