UFC

Universidade Federal do Ceará
Programação Computacional para Engenharia G e H
  (CK174)
Horários
terça de 14 às 16h e quinta de 8 às 10h
Local: 717/A

email
ufc@fredbf.com


1. EMENTA
       Introdução à computação. Sistemas de numeração. Tipos básicos de dados. Operadores. Estruturas de controle de fluxo. Tipos de dados definidos pelo usuário. Manipulação de memória. Funções. Sistemas de E/S. Algoritmos.


2. CONTEÚDO
 
Descrição
Assunto
CH
1.1. Algoritmos
1.2. Definições básicas 
INTRODUÇÃO
0h
1.3. Características das Linguagens de Programação
1.4. Utilização de um ambiente de desenvolvimento integrado (IDE) 
2.1. Estrutura de um programa
2.2. Identificadores
2.3. Tipos básicos de dados
2.4. Declaração de variáveis e constantes
CONCEITOS BÁSICOS
0h
2.5. Escopo de variáveis
2.6. Classes de variáveis
2.7. Operadores
2.8.  Precedência de operadores
3.1. Comandos de decisão 
ESTRUTURAS DE CONTROLE DE FLUXO
0h
3.2. Comandos de repetição
4.1. Vetores
4.2. Matrizes 
VETORES E MATRIZES
24h
4.3. Cadeias de caracteres (strings)
4.4. Manipulação de matrizes 
5.1. Declaração e manipulação
2.2. Ponteiros e vetores e matrizes
PONTEIROS
8h
5.3. Alocação dinâmica 
6.1. Estruturas
6.2. Enumeradores
OUTROS TIPOS DE DADOS
8h
6.3. Uniões
7.1. Passagem de parâmetros - por valor e por referência
7.2. Funções pré-definidas em biblioteca padrão
7.3. Funções de E/S via console
FUNÇÕES
8h
7.4. Protótipos de funções
7.5. Recursividade 
8.1. Arquivos e streams
8.2. Arquivos text
ARQUIVOS
16h
8.3. Arquivos binários
8.4. Manipulação de arquivos 
9.1. Ordenação
9.2. Busca
9.3. Pilhas
TÉCNICAS DE PROGRAMAÇÃO
16h
9.4. Filas
9.5. Listas encadeadas


3. ANDAMENTO DA DISCIPLINA
 
05/08
Não houve aula 
(1) Motivo: laboratório sendo pintado 
07/08
Não houve aula 
(1) Motivo: laboratório sendo pintado 
12/08
Não houve aula 
(1) Motivo: indefinição da sala 
14/08
Apresentação inicial da disciplina
(1) Conteúdo: primeiro contato com a turma, para saber  
19/08
Avaliação de conhecimento de ANSI C
(1) Conceitos Básicos
(2) Estruturas de Controle
(3) Vetores
(4) Matrizes
21/08
Nivelamento de ANSI C
(1) Conteúdo: (a) tabela de precedência; (b) tabela verdade; (c) tamanho de vetor; (d) erros comuns; (e) diferença entre char e int; (f) ANSI C; (g) passagem de parâmetros; (h) escopo de variável
(2) Correção da avaliação de conhecimento
26/08
Lista de Exercícios 1 
(1) Conteúdo: vetores e matrizes
(2) Lista 1
(3) Turma 1
 
28/08
Strings: Aula 1
(1)
(2)
(3) 
(4)
02/09
Lista de Exercícios 1 
(1) Conteúdo: vetores e matrizes
(2) Lista 1
 
(3) Turma 2
04/09
Strings: Aula 2
(1)
(2)
(3) 
(4)
09/09
Lista de Exercícios 2 
(1) Conteúdo: strings
(2) Lista 2

(3) Turma 1
11/09
Strings: Aula 3
(1)
(2)
(3) 
(4)
16/09
Lista de Exercícios 2 
(1) Conteúdo: strings
(2) Lista 2

(3) Turma 1
18/09
Avaliação 1
(1) Conteúdo: strings
23/09
Correção da Avaliação 1
(1) Turma 2 (com possível participação de alunos da Turma 1)
(2) Exercícios-Desafio 1 
25/09
Funções
(1)
(2)
(3) 
(4)
30/09
Lista de Exercícios 3 
(1) Conteúdo: funções
(2) Lista 3

(3) Turma 1
02/10
Estruturas: Aula 1
(1)
(2)
(3) 
(4)
07/10
Lista de Exercícios 3 
(1) Conteúdo: funções
(2) Lista 3

(3) Turma 2
09/10
Estruturas: Aula 2
(1)
(2)
(3) 
(4)
14/10
Lista de Exercícios 4 
(1) Conteúdo: estruturas
(2) Lista 4

(3) Turma 1
16/10
Ponteiros: Aula 1
(1)
(2)
(3) 
(4)
21/10
Lista de Exercícios 4 
(1) Conteúdo: estruturas
(2) Lista 4

(3) Turma 2
23/10
Ponteiros: Aula 2
(1)
(2)
(3) 
(4)
28/10
Lista de Exercícios 5 
(1) Conteúdo: ponteiros
(2) Lista 5

(3) Turma 1 (porém, a turma 2 deverá fazer por conta própria essa lista)
30/10
Avaliação 2
(1) Conteúdo: funções + estruturas + ponteiros
04/11
Correção da Avaliação 2
(1) Turma 2 (com possível participação de alunos da Turma 1)
(2) Exercícios-Desafio 2 
06/11
Arquivos: Aula 1
(1)
(2)
(3) 
(4)
11/11
Lista de Exercícios 6 
(1) Conteúdo: arquivos
(2) Lista 6

(3) Turma 1
 
13/11
Arquivos: Aula 2
(1)
(2)
(3) 
(4)
18/11
Lista de Exercícios 6 
(1) Conteúdo: arquivos
(2) Lista 6

(3) Turma 2
20/11
Arquivos: Aula 3
(1)
(2)
(3) 
(4)
25/11
Lista de Exercícios 7 
(1) Conteúdo: arquivos avançado + técnicas de programação
(2) Lista 6

(3) Turma 1
27/11
Técnicas de Programação
(1)
(2)
(3) 
(4)
02/12
Lista de Exercícios 7 
(1) Conteúdo: arquivos avançado + técnicas de programação
(2) Lista 6

(3) Turma 1
04/12
Avaliação 3
(1) Conteúdo: arquivos e técnicas de programação
09/12
Reposição
(1) Av1 ou Av2 ou Av3
11/12
Final
(1) Conteúdo: todo o assunto do semestre


 

4. BIBLIOGRAFIA
 

5. LISTAS DE EXERCÍCIOS
 
  • Lista de Exercícios 1 (vetores e matrizes) :
    • Quando fazer? Desde já, para revisar vetores e matrizes 
  • Lista de Exercícios 2 (strings):
    • Quando fazer? 
      • Depois da aula 1 de strings (até questão 5)
      • Depois da aula 2 de strings (até questão 10)
      • Depois da aula 3 de strings (até questão 15)
  • Lista de Exercícios 3 (funções)
    • Quando fazer? Após a aula de funções
  • Lista de Exercícios 4 (estruturas)
    • Quando fazer? Após a aula de estruturas
      • Depois da aula 1 de estruturas (até questão 5)
      • Depois da aula 2 de estruturas (até questão 10)
  • Lista de Exercícios 5 (ponteiros)
    • Quando fazer? Após a aula de ponteiros
  • Lista de Exercícios 6 (arquivos)
    • Quando fazer? Após a aula de arquivos
  • Lista de Exercícios 7 (arquivos avançado + técnicas de programação)
    • Quando fazer? Após a aula de técnicas de programação

6. EXERCÍCIOS-DESAFIO
 
  • Exercícios-Desafio 1:
    • Quando fazer? Antes da Avaliação1, para ter certeza que vai se sair bem na Av1
  • Exercícios-Desafio 2:
    • Quando fazer? Antes da Avaliação2, para ter certeza que vai se sair bem na Av2
  • Exercícios-Desafio 3:
    • Quando fazer? Antes da Avaliação3, para ter certeza que vai se sair bem na Av3

7. COMPILADORES
 
  • DevC++ - compilador C/C++, versão 4.9.9.2, gratuito (9MB)
  • TurboC++ - compilador C/C++ antigo, versão 1.0.1, mas com help completo (3MB)

8. AVALIAÇÕES
 
  • A média final é dada pela média aritmética entre as três avaliações (Av1, Av2 e Av3)
  • A reposição ocorre no final do semestre:
    • O aluno só pode fazer apenas uma reposição