Métodos Computacionais

   

Professor Adriano Sarmento
email: aams@cin.ufpe.br

 

Monitores:

Ian Antônio

David Wilber

 

Notas da 2ª Unidade

 

Objetivos:

Ensinar conceitos mais avançados de estruturas de dados, utilizando a linguagem C como apoio. Além de serem abordadas estruturas como listas, pilhas,filas e árvores, algumas técnicas de manipulação destas estruturas como ordenação e busca são discutidas.

 

 

Cronograma

 

10/03,

sala de aula

Discutir conceitos básicos de computação, ciclo de desenvolvimento de programas,características da linguagem C, estruturas da linguagem C, tipos de dados, conceito de declaração,variáveis locais e globais (veja as transparências).

Discutir postura durante o curso: importância da disciplina, cronograma pessoal e carga de estudo necessária

Comprar livro texto do curso.

Pode baixar alguma IDE para programar em C. Alguns links:

DevC++ : http://www.bloodshed.net/dev/devcpp.html

 

CodeBlocks: http://www.codeblocks.org/downloads

12/03, sala de aula

Discutir operadores de atribuição, aritméticos, relacionais, lógicos, especiais da linguagem C. Discutir conceito de expressão e avaliação do mesmo em C. Explorar algumas funções de entrada e saída. (veja as transparências)

17/03, sala de aula

Discutir comandos de controle em C. Discutir estruturas de repetição, condicionais e de desvio (veja as transparências)

19/03, Laboratório

Aula prática. Apresentando o ambiente Dev C++. Escrever alguns programas utilizando os conceitos básicos vistos em C.  (veja exercício)

24/03, sala de aula

Discutir funções e ponteiros. Discutir estrutura de funções, pilha de execução, ponteiros, passagem de parâmetro por valor versus passagem de parâmetro por referência, macros. (veja as transparências)

 

Fazer os exercícios com data de entrega para 31/03/2010.

Os alunos cujos nomes iniciam com as letras compreendidas entre A– H devem mandar via email a resolução dos exercícios para o Monitor Ian (antonio.mendonza@gmail.com).

Os alunos cujos nomes iniciam com as letras compreendidas entre I – Z  devem mandar via email para o Monitor David (dwilber_10@hotmail.com)

 

26/03, Laboratório

Escrever alguns programas utilizando funções e ponteiros.  (veja o exercício)

31/03, sala de aula

Discutir uso de vetores e alocação dinâmica de vetores . Discutir matrizes dinâmicas. Discutir representação de matrizes dinâmicas, alocação estática versus alocação dinâmica. (veja as transparências)

 

Fazer os exercícios com data de entrega para 09/04/2010.

Os alunos cujos nomes iniciam com as letras compreendidas entre A– H devem mandar via email a resolução dos exercícios para o Monitor Ian (antonio.mendonza@gmail.com).

Os alunos cujos nomes iniciam com as letras compreendidas entre I – Z  devem mandar via email para o Monitor David (dwilber_10@hotmail.com)

 

 

02/04

NÃO HAVERÁ AULA – PAIXÃO DE CRISTO

07/04

NÃO HAVERÁ AULA – PROVAS DA ÁREA II

09/04

        Aula prática. Exercícios sobre Matrizes.  (veja o exercício)

14/04, sala de aula

Discutir representação de cadeia de caracteres, manipulação de cadeia de caracteres e principais funções (veja as transparências)

16/04, sala de aula

Discutir tipos estruturados. Discutir importância, sintaxe,  manipulação de tipos estruturados, passagem de tipos estruturados para funções e tipos enumerados. (veja as transparências)

Fazer os exercícios com data de entrega para 23/04/2010.

Os alunos cujos nomes iniciam com as letras compreendidas entre A– H devem mandar via email a resolução dos exercícios para o Monitor Ian (antonio.mendonza@gmail.com).

Os alunos cujos nomes iniciam com as letras compreendidas entre I – Z  devem mandar via email para o Monitor David (dwilber_10@hotmail.com)

 

 

21/04

NÃO HAVERÁ AULA – TIRADENTES

23/04, sala de aula

Discutir conceito de tipos abstratos de dados. Discutir vantagens, apresentar exemplos, e implementar um TAD. (veja as transparências)

28/04, sala de aula

Discutir conceito de listas encadeadas. Discutir representação de listas simplesmente encadeadas, manipulação, operações de inclusão, remoção e busca. (veja as transparências) .

Veja alguns exemplos

30/04, Laboratório NI-5

Aula prática. Exercícios sobre lista simplesmente encadeadas. (veja o exercício)

05/05, sala de aula

Discutir outros tipos de listas encadeadas. Apresentar listas duplamente encadeadas, circulares, duplamente circulares e listas de tipos estruturados. Mostrar a manipulação e operações destes tipos de lista (veja as transparências)

 

Veja alguns exemplos

Fazer o exercício com data de entrega para 14/05/2010.

Os alunos cujos nomes iniciam com as letras compreendidas entre A– H devem mandar via email a resolução dos exercícios para o Monitor Ian (antonio.mendonza@gmail.com).

Os alunos cujos nomes iniciam com as letras compreendidas entre I – Z  devem mandar via email para o Monitor David (dwilber_10@hotmail.com)

 

07/05, Laboratório NI-5

 

Aula prática. Exercícios sobre lista duplamente encadeadas. (veja o exercício)

12/05, sala de aula

Discutir arquivos em C. Discutir diferenças entre arquivos texto e binários. Apresentação das APIs de manipulação de arquivos em C (veja as transparências).

14/05, sala de aula

Aula de revisão (veja o exercício)

19/05

NÃO HAVERÁ AULA – PROVAS AREA II

20/05, sala de aula 123

13:00-15:00

AULA EXTRA DE EXERCÍCIOS

21/05, sala de aula

1º Exercício escolar

26/05, sala de aula

Discutir conceitos de Pilha. Explorar diferentes implementações, operações e exemplos de aplicações (veja as transparências).

28/05, Laboratório NI-5

Aula prática. Exercícios sobre pilha.  (veja o exercício)

02/06, Laboratório

Discutir conceitos de Fila. Explorar diferentes implementações, operações e exemplos de aplicações (veja as transparências).

 

Fazer os exercícios com data de entrega para 09/06/2010 e enviar para o respectivo monitor..

 

04/06,

NÃO HAVERÁ AULA

Aula prática será explicada posteriormente. De qualquer forma, tente fazer em casa.  Exercícios sobre fila (veja o exercício).

09/06, sala de aula

Discutir conceitos de árvores. Mostrar diferentes tipos de árvores e explorar implementação e operações em árvores binárias (veja as transparências).

Fazer o exercício com data de entrega para 16/06/2010 e enviar para o respectivo monitor.

11/06,

Laboratório

Aula prática. Exercícios sobre árvores binárias (veja o exercício)

Distribuição da especificação do projeto.

16/06, sala de aula

Explorar árvores com número variável de filhos. Discutir diferentes estratégias de implementação. Raciocínio sobre árvores com número variável de filhos, utilizando topologia binária (veja as transparências)

Fazer o exercício com data de entrega para 23/06/2010 e enviar para o respectivo monitor.

18/06, 

Laboratório

Aula prática. Exercícios sobre árvores com número variável de filhos (veja o exercício). 

23/06

NÃO HAVERÁ AULA

25/06

NÃO HAVERÁ AULA

30/06

NÃO HAVERÁ AULA – PROVAS AREA II

02/07

NÃO HAVERÁ AULA

07/07, sala de aula

 Aula de Revisão (veja o exercício).

09/07, sala de aula

2° Exercício Escolar

ATENÇÃO:

Quem tiver prova de Álgebra linear de 14:00, poderá começar a fazer a prova mais cedo (12:00)

14/07, Laboratório

Apresentação de projeto

15/07, sala de aula,

14:00

2ª Chamada (Para quem faltou a uma das provas)

ATENÇÃO:

Começa as 14:00

21/07, sala de aula

Exercício Final

Livro Texto

Waldemar Celes
Renato Cerqueira
José Lucas Rangel
"Introdução a Estrutura de Dados - Com técnicas de programação em C "