UFMG - ICEx - DCC

DCC003 --Algoritmos e Estruturas de Dados I -- AEDsI
2o. Semestre de 2012 – Turma N

uma “rede” da turma montou um grupo:

 

https://www.facebook.com/groups/AedsN1/

 


Entregas de TPs (até 13/dez)

Notas TPs (18/dez)

Frequência

Notas:


TP1: isbn13

 

http://200.131.3.44/moodle

 

Prováveis TPs:

 

Você deve ter uma conta no DCC até o dia 20/setembro/2012 (vale pontos!).

Se você não tem conta no DCC (não é da Computação) mande mensagem para rodolfo [em] dcc.ufmg.br

com seu nome, numero de matricula e curso, a conta demora alguns dias até ficar disponível!!

 


 

Terças e quintas-feiras, sala 2013 , 14:55 as 16:35;
Monitoria: todas Quartas-feiras sala/lab 1010  de 16:40  as 17:40

Marco Túlio (gmail tulio ponto rodrigues)

 

http://en.wikibooks.org/wiki/C_Programming/Standard_libraries


O objetivo desta disciplina é facilitar que o aluno domine os conceitos básicos de programação utilizando o paradigma imperativo, além disso, facilitar que o aluno aprenda uma linguagem de programação, neste caso a linguagem C e C++, e aprenda ainda alguns algoritmos e estruturas de dados simples. Exemplos de conceitos básicos de programação: fluxo de controle, variável, constante, operador, expressão, comando de atribuição, comando iterativo, apontador, referência, arranjo e indexação, cadeia de caracteres, funções, arquivo, entrada e saída, estrutura de dados linear. Exemplos de algoritmos simples: cálculo de digitos verificadores, seqüências, ordenação.


Avaliação:
60 pontos: duas provas valendo 30 pontos cada
40 pontos: trabalhos práticos, listas de exercícios, testes etc.



 

A disciplina é baseada nas notas de aula. Quando o aluno não comparecer à aula, deve arranjar um colega que forneça as anotações de aula. Parte do material será disponibilizado neste sítio Web.

Material suplementar
Consulte estes livros na biblioteca do ICEx:

GUIMARÃES, Angelo de Moura, LAGES, Newton Alberto.
Algoritmos e Estruturas de Dados,
Ed. LTC, 1994.

FARRER, Harry, et. al.
Algoritmos estruturados. 3. ed.
Ed. LTC, 1999.

Existem vários cursos de C/C++ disponíveis na Internet. O problema destes cursos é que a ênfase é a linguagem. Procure cursos onde a ênfase são os conceitos de programação.


Provas:
As provas são sem consulta, mas você pode trazer uma folha tamanho A4 contendo quaisquer anotações de próprio punho; não é para imprimir, não é para copiar (não faça colagens). A folha de consulta deverá ser entregue junto com a prova. O objetivo da folha de consulta é evitar que o aluno escreva na carteira, na régua ou na borracha. O objetivo da folha de consulta não é testar se o aluno sabe condensar centenas de folhas em uma só folha.

São escolhidas as duas melhores notas caso o aluno faça as três provas. O objetivo de existirem três provas e serem escolhidas duas notas é evitar que o professor tenha que fazer julgamento de mérito no caso de alunos que não podem comparecer em algum dia de prova. A possível melhoria de nota é um efeito colateral.

1a. Prova: /2012
2a. Prova: /2012
3a. Prova: /2012


Trabalhos Práticos:


Listas de Exercícios:


Testes Surpresa:


Material Extra:

Dicas sobre o uso polido e educado de correio eletrônico

Dicas sobre código ilegível, incompreensível e de difícil manutenção (incomprehensible)


Calendário
 

Data

Aula

Evento

Assunto

Setembro

 

 

 

11

01&02

 

Introdução – Computador Simplificado

13

03&04

 

Comp. Simpl. & DEV-C++

18

05&06

 

Variáveis, Expressões - mantras

20

07&08

 

Dígitos verificadores, CPF, CNPJ

25

09&10

 

Controle do Fluxo – se, while, for etc

27

11&12

 

Arranjos e ponteiros

Outubro

 

 

 

02

13&14

 

Ordenação, Função

04

15&16

 

Função, estruturas/struct

05(extra)

17&18

 

revisão geral; arranjo não é “left-value”

09

19&20

 

entrada e saída

11

21&22

 

entrada e saída

16

23&24

 

Funções/struct

18

25&26

 

struct/union/typedef/define

23

27&28

 

Revisão; Relações; Senha

25

29&30

 

 

30

31&32

 

1ª. prova

Novembro

 

 

 

01

33&34

 

Revisão – Classes C++

06

35&36

 

Classe/instância Estrut./Comport.

08

37&38

 

Construtores/Hierarquia/Amizade

13

39&40

 

Construtores/Destruidores

20

41&42

 

Lançamento e apanhamento de exceção

22

43&44

 

Lançamento e apanhamento de exceção

27

45&46

 

Coreografia/Orquestração Cria/destroi

29

47&48

 

Sobrecarga de operadores; Templates

30(extra)

49&50

 

Sobrecarga de Op. Templates

Dezembro

 

 

 

04

51&52

 

Listas; encadeamento simples e duplo

06

53&54

 

2ª Prova

11

55&56

 

Revisão

13

57&58

 

3ª prova

18

59&60

 

Revisão final

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Computador simplificado  pdf

desenho   Anotações de aula 1 Anotações de aula 2

Edição, compilação, execução... desenvolvendo programas

Primeiros programas em C

Variáveis - discussão inicial de comando de atribuição e expressões

Expressões

printf & scanf

Dígitos verificadores do CPF: regras e programas - pdf

Dígitos verificadores do CNPJ: regras

Controle do fluxo de execução:

Comando condicional e iterativos

Comando escolha (switch)

Comando enquanto-faça

comando faça-enquanto

comando para

Arranjos e ponteiros

Arranjos representando matrizes: Multiplicação de matrizes

Ordenação de arranjos

Cadeia de caracteres (arranjos de char)

Outro programa para cálculo dos dígitos verificadores de No. de CPF

Estruturas

Funções

typedef, unions e quase tudo mais

 

Nurikabe

 

Entrada e saida FILE e Cia

Exemplo de prova

Mais um exemplo

 


Primeiros programas em C++, variáveis etc

Conceitos e definição de classe

Classes derivam classes – Hierarquias – Amizade : Funções & Classes

Referências

Classes abstratas – Funções virtuais puras

Exercicios compilados de provas passadas!

Lançando e apanhando exceção

Templates – elementos para a “programação genérica”

Estruturas Lineares – “Como” colecionar ? - encadeamento

Exemplo de prova