Laboratório de Programação I (UFBA 2009.1)

From AdonaiMedrado.Pro.Br
Revision as of 21:54, 28 June 2009 by Adonaimedrado (Talk | contribs) (Aula do dia 03/07/2009)

Jump to: navigation, search

Programa

O programa oficial da disciplina está disponível em PDF.

Links sugeridos

Avaliações

As avaliações da disciplina serão especificadas por escrito neste endereço. Mudanças podem ocorrer ao longo do semestre, porém a versões finais das especificações estarão disponíveis no mínimo 30 dias antes da data de entrega de cada atividade.

Segue abaixo as avaliações previstas e seus respectivos valores máximos:

  • Prova I - 2,5 pontos.
  • Prova II - 2,5 pontos.
  • Trabalho semestral - 3,0 pontos.
  • Resolução dos problemas propostos e participação nas atividades de laboratório - 2,0 pontos.

Especificação de trabalho

Cronograma

Aula do dia 06/03/2009

Atividade
Apresentação da disciplina, professor e alunos.
Apresentação da metodologia de trabalho.
Assuntos
Histórico
Principais características
Introdução ao ambiente de programação
Editores de texto e compiladores utilizados
Opções interessantes do GCC.
Principais erros da programação
Introdução à linguagem C
Tipos.
Operadores.
Expressões.
Estruturas de controle condicionais.
Estruturas de repetição.
Biblioteca padrão
stdio.h: Comandos printf e scanf.
Link sugerido
Using gdb.
Programas úteis
C: Limites definidos pela implementação.
Problemas propostos
C: Problema da média.
C: Problema da soma.
C: Problema do número espelho.
C: Problema da idade em dias.

Aula do dia 13/03/2009

Atividade
Dúvidas dos problemas propostos.
Problemas proposto
C: Problema da seqüência de Fibonacci.
C: Problema da conjectura de Goldbach.
C: Problema do quadrado gêmeo das partes.

Aula do dia 20/03/2009

Assuntos
A estrutura de um programa em Linguagem C
Uso de vetores de tamanho fixo e strings.
Vetores.
Matrizes.
Strings.
Atividade
Dúvidas dos problemas propostos.
Problemas propostos
C: Problema da competição alien.
C: Problema da transmissão de rádio.
Problema do giro da palavra - resolva utilizando a linguagem C.
Problema da codificação da string - resolva utilizando a linguagem C.

Aula do dia 27/03/2009

Assuntos
Passagem de parâmetro para o programa (argc, argv, ...)
Funções
Passagem de parâmetros por valor.
Passagem de parâmetros por referência.
Funções inline.
Atividade
Dúvidas dos exercícios.
Link sugerido
Inline Functions In C.
Problemas propostos
Problema da separação das sílabas (versão light).
C: Problema da freqüência do caractere.
C: Problema da sopa de letras na formação de palavras (versão light).

Aula do dia 03/04/2009

Atividade
Compartilhamento de soluções
Adriano Novais Queiroz: Solução: Problema da idade em dias (Adriano Queiroz).
Alessandro Santos da Silva: Solução: Problema da soma (Alessandro Santos).
Rafael Dourado Silvestre de Oliveira: Solução: Problema da freqüência do caractere (Rafael Oliveira).
Márcio Trindade de Oliveira: Solução: Problema da seqüência de Fibonacci (Márcio Trindade).
Maurício Souza Lage: Solução: Problema do giro da palavra (Maurício Souza Lage).
Tito Gardel do Prado Filho: Solução: Problema da competição alien (Tito Filho).
Dúvidas dos exercícios.
Problemas propostos

Aula do dia 17/04/2009

Assunto
Introdução a ponteiros.
Ponteiro para função (função callback).
Uso da função qsort (stdlib.h).
Uso da função bsearch (stdlib.h).
Atividade
Dúvidas dos exercícios.
Revisão dos conceitos.
Exemplos
C: Ponteiro para variável.
C: Ponteiro para ponteiro.
C: Ponteiro para array.
C: Ponteiro para string.
C: Ponteiro para função.
C: qsort.
C: bsearch.
Problemas propostos
Problema das seqüências alternadas.
Problema da seqüência de algarismos agrupados com ordenação.

Aula do dia 24/04/2009 (Sala 155)

Atividade
Apresentação das propostas dos trabalhos semestrais.
Equipe 1 - Software de bate-papo (Qt).
Componentes
Eduardo Ramos.
Maurício Lage.
Produção
Documento.
Equipe 2 - Sokobox (Allegro).
Componentes
Adriano Queiroz.
Rafael Dourado.
Tito Gardel.
Produção
Documento.
Equipe 3 - Jogo de Damas (Allegro).
Componentes
Bruno Barbosa.
Lúcio Ribeiro.
Produção
Documento.
Equipe 4 - Software de Backup para Linux (Gtk+)
Componentes
Alessandro Santos.
Marcio Trindade.
Raniere Viana.
Produção
Documento.

Aula do dia 08/05/2009

Atividade
Prova I.
Problema dos casais.
Problema da soma reservada.
Problema da palavra mágica.
Problema do conjunto e seus elementos únicos.

Aula do dia 15/05/2009

Atividade
Resultado e comentário da Prova I
Resultados dos testes e notas.
Testes executados.
Respostas do professor.
Assuntos
Estruturas não primitivas.
Tabelas (vetor de struct).
Revisão & lembrete
C: Uso do scanf.
Problemas propostos
Problema do professor de terceiro ano.

Aula do dia 22/05/2009

Assuntos
Ponteiros.
Alocação de dinâmica de memória.
Links sugeridos
malloc.
realloc.
calloc.
free.
Problemas propostos
Problema dos sucessores.
Problema do quadrado perfeito.
Problema do baile de casais.

Aula do dia 29/05/2009

Assunto
Arquivos
Links sugeridos
fopen.
fscanf.
feof.
fclose.
Problemas propostos
Problema da moda.

Aula do dia 05/06/2009

Atividade
Compartilhamento de soluções
Adriano Queiroz: Solução: Problema do baile de casais (Adriano Queiroz).
Bruno Barbosa: Solução: Problema da simplificação das frações (Bruno Barbosa) (incompleto).
Eduardo Ramos: Solução: Problema da moda - dificuldade 2 (Eduardo Ramos).
Eduardo Ramos: Solução: Problema das seqüências alternadas (Eduardo Ramos).
Lúcio Ribeiro: Solução: Problema da moda - dificuldade 4 (Lúcio Ribeiro).
Márcio Trindade: Solução: Problema do professor de terceiro ano (Márcio Trindade).
Rafael Dourado: Solução: Problema do quadrado perfeito (Rafael Dourado).
Tito Gardel: Solução: Problema do professor de terceiro ano (Tito Gardel).
Assunto
Arquivos.
Links sugeridos
fgets.
fputs.
Exemplo
C: Uso de fgets e fputs com stdin e stdout.
Problemas propostos
Problema da simplificação das frações.

Aula do dia 06/06/2009 (Sábado 13:00~17:00 Sala 151)

Assunto
Competição de programação.
complp1_20091 (terceiro colocado):
Bruno.
Márcio.
complp2_20091 (primeiro colocado):
Adriano.
Tito.
Mateus.
complp3_20091 (quarto colocado):
Lucas.
Flávio.
complp4_20091 (segundo colocado):
Carlos.
Rafael.
complp5_20091 (não classificado):
Denildo.
Israel.
Problemas propostos
Antecessores.
Documentos
Problemas da Competição.

Aula do dia 12/06/2009

Atividade
Compartilhamento de soluções
Bruno Barbosa: Solução: Problema da simplificação das frações (Bruno Barbosa).
Lúcio Ribeiro: Solução: Problema da moda - dificuldade 5 (Lúcio Ribeiro).
Links sugeridos
fread.
fwrite.
fseek.
Exemplos
bmpinfo.c.
crise_cad.c.
crise_print.c.
Problemas propostos
Problema da prefeitura em crise (sem XML).

Aula do dia 19/06/2009

Atividade
Prova II.
Problema do checksum.
Problema do TMA.
Escolha um dos problema abaixo:
Problema da codificação da string (aula do dia 20/03/2009).
Problema da seqüência de algarismos agrupados com ordenação (aula do dia 17/04/2009).
Problema da prefeitura em crise (sem XML) (aula do dia 12/06/2009).

Aula do dia 26/06/2009

Atividade
Prova II (segunda chamada).
Apresentação dos trabalhos semestrais.

Aula do dia 03/07/2009

Atividade
Compartilhamento de soluções
Bruno Barbosa.
Mauricio Lage.
Resultado e comentário da Prova II
Resultados dos testes e notas.
Testes executados.
Divulgação dos resultados finais.
Feedback da disciplina.

Aula do dia 17/07/2009

Atividade
Prova final.