Programação para Engenharia I
Turma 380 - Prof. Marcelo Cohen

Acesso ao Moodle

Próximas aulas:


23/05/2012 [QUA NP] - Trabalho 3 (Laboratório - 411)
25/05/2012 [SEX NP] - Correção do trabalho 3 e exercícios sobre vetores (lab) (Laboratório - 310)

Programa da Disciplina

Ementa

Conceito de dados e Informação. Conceitos Básicos de Algoritmos. Tipos de Algoritmos Estruturados. Tipos Simples de Dados. Arranjos. Subalgoritmos. Linguagem de Programação. Implementação de Algoritmos.

Objetivos

1. Conhecer e manipular os tipos primitivos de dados e as estruturas do tipo arranjo e registro.

2. Construir algoritmos estruturados que sejam solução de um dado problema e que manipulem os dados adequadamente.

3. Traduzir soluções algorítmicas encontradas, para uma linguagem de programação.

4. Verificar a correção de um programa.

5. Utilizar conceitos de modularidade na construção de soluções de problemas.

UNIDADE 1: Conceitos Fundamentais

1.1 Conceitos e características de um algoritmo
1.2 Objetos de um algoritmo: constantes e variáveis
1.3 Tipos de dados
1.4 Conceito de atribuição
1.5 Expressões em algoritmos
1.6 Definição de variáveis

UNIDADE 2: Tipos de Algoritmos

2.1 Puramente Sequenciais
2.1.1 Tipos de instruções
2.2 Tipos de estruturas
2.2.1 Álgebra booleana
2.2.1.1 Relações
2.2.1.2 Expressões lógicas
2.2.1.3 Tabelas verdade
2.2.2 Estruturas de seleção concatenadas
2.2.3 Estruturas de seleção aninhadas
2.2.4 Estruturas de Repetição
2.2.4.1 Conceitos relacionados: inicialização, contadores e acumuladores
2.2.4.2 Estruturas de repetição aninhadas

UNIDADE 3: Subalgoritmos

3.1 Conceito e vantagens de sua utilização
3.2 Escopo de variáveis
3.3 Tipos: procedimentos e funções
3.4 Definição e referência a subalgoritmos
3.5 Parâmetros: passagem por valor e por referência

UNIDADE 4: Tipos de Dados Estruturados

4.1 Definição e referência
4.2 Arranjos unidimensionais
4.3 Arranjos multidimensionais
4.4 Algoritmos que manipulam com este tipo de variáveis
4.5 Registros

UNIDADE 5: Linguagem de Programação C

5.1 Áreas de um programa C
5.2 Definição de tipos, variáveis, procedimentos e funções
5.3 Comandos de leitura, impressão, atribuição, e bloco
5.4 Estruturas de seleção
5.4.1 Simples
5.4.2 Composta
5.5 Estruturas de repetição
5.5.1 WHILE
5.5.2 FOR
5.6 Tipos Estruturados
5.6.1 Definição de tipo
5.6.2 Referência e uso
5.7 Procedimentos e Funções
5.7.1 Forma geral

Bibliografia

Básica

1. SCHILDT, HERBERT. C Completo e Total. São Paulo:Makron Books, 2006, 827p. (ou versões anteriores)
2. ORTH, AFONSO I. Algoritmos e Programação com Resumo das Linguagens C e Pascal. Porto Alegre: Editora AIO. 2001. 176p.
3. DAMAS, LUIZ. Linguagem C. 10ª. Edição. Rio de Janeiro: LTC, 2007.

Complementar

1. FARRER, H. et alli. Algoritmos Estruturados. Rio de Janeiro, Guanabara, 1999. (ou versões anteriores)
2. DEITEL, H. M. Como programar em C. Rio de Janeiro: LTC, 1999. 486 p.
3. KERNIGHAN, BRIAN W. C: a linguagem de programação. Rio de Janeiro : Campus, 1989. 208 p. (ou versões anteriores)
4. FORBELLONE, A. L. V., EBERSPACHER, H. F. Lógica de Programação. São Paulo, Makron Books, 2000. (ou versões anteriores)
5. CORMEN, T., LEISERSON, C., RIVEST, R. Introduction to Algorithms. MIT Press, 2001. (ou versões anteriores)

Avaliação

G1 = (3*P1 + 3*P2 + T) / 7

Onde T é a média dos trabalhos realizados ao longo da disciplina

Se o aluno faltar a uma das provas, terá o direito de realizar a prova de substituição (Prova S), cujo conteúdo abrange toda a matéria da disciplina

Material de Apoio