Laboratório de Programação 2 (UFBA 2008.2)

From AdonaiMedrado.Pro.Br
Revision as of 03:16, 18 August 2008 by Adonaimedrado (Talk | contribs) (Conteúdo Programático)

Jump to: navigation, search

Identificação da Disciplina

Nome
Laboratório de Programação II
Departamento
Computação
Carga Horária
51 h
Função
Básica
Natureza
Optativa
Pré-requisitos obrigatórios
Análise e Projeto de Algoritmos
Pré-requisitos recomendados
Não tem

Ementa

Projetar e implementar algoritmos com o objetivo de capacitar os alunos em competições de programação.

Objetivos

  • Desenvolver a habilidade e velocidade para projetar e implementar algoritmos utilizando C, Java ou C++ para os problemas comumente apresentados em competições de programação.

Conteúdo Programático

  1. As competições de programação
    1. International Olympiad in Informatics (IOI).
    2. Olimpíada Brasileira de Informática (OBI).
    3. ACM International Collegiate Programming Contest (ACM-ICPC).
    4. Maratona de Programação.
    5. TopCoder.
    6. Internet Problem Solving Contest (IPSC).
  2. Uso do software Mooshak
  3. Tópicos da linguagem de programação C
    1. Vetor e matriz.
    2. Biblioteca padrão
      1. Entrada e saída (stdio.h).
        1. Função printf.
          1. Formação: %d %i %o %x %X %u %c %s %f %e %E %g %G %%.
        2. Função scanf.
          1. Mascara de entrada: %d %i %o %u %x %c %s %e %f %g %%
      2. Funções utilitárias (stdlib.h)
        1. Funções de conversão: atof, atoi, atol.
        2. Funções de alocação e realocação: malloc, calloc, realloc e free.
        3. Função bsearch.
        4. Função qsort.
        5. Função div.
  4. Tópicos da linguagem de programação C++
    1. Acesso à entrada padrão (cin).
    2. Acesso à saída padrão (cout).
    3. Contêineres (vector, list, queue, stack, deque, priority_queue, set, multiset, map, multimap).
  5. Tópicos da linguagem de programação Java.
    1. Acesso à entrada padrão (System.in, BufferedReader, InputStreamReader).
    2. Acesso à saída padrão (System.out.println, System.out.print).
    3. Collection, HashMap, ArrayList, SortedSet.
  6. Tópicos de Algorítmos
    1. Algoritmos de grafos.
    2. Operações sobre matrizes.

Metodologia

Aulas expositivas, demonstrações e exercícios coordenados.

Recursos didáticos

  • Datashow ou retroprojetor.
  • Laboratório com computadores equipados com Java SE Development Kit (JDK), compiladores C e C++.

Avaliação

  • Trabalhos em classe
    • Pontuação: 5,0.
  • Prova 1
    • Pontuação: 2,5.
  • Prova 2
    • Pontuação: 2,5.

Bibliografia Básica

KERNIGHAN, Brian W. e RITCHIE, Dennis M.. C: A linguagem de programação padrão ANSI. Rio de Janeiro: Campus, 1989.

STROUSTRUP, Bjarne. A linguagem de programação C++. 3a. edição. Tradução Maria Lúcia Blanck Lisbôa e Carlos Arthur Lang Lisbôa. Porto Alegre: Bookman, 2000.

Bibliografia Recomendada

HERBERT, Shildt. C, completo e total. 3a. edição. Tradução Roberto Carlos Mayer. São Paulo: Makron Books, 1996.

Referências na Internet

MOOSHAK. Mooshak. Disponível em: <http://mooshak.dcc.fc.up.pt/~zp/mooshak/>. [s.d.]

FORTUNA, Vinícius José. Competições de Programação v0.3.1. Disponível em: <http://lampiao.ic.unicamp.br/maratona/?name=competicoes>. 2007.