INF 1007 Programação II  
Apresentação da Disciplina  
Edirlei Soares de Lima  
<elima@inf.puc-rio.br>  
Programação II  
Turma 33J  
Prof. Edirlei Soares de Lima <elima@inf.puc-rio.br>  
Horário das Aulas:  
Segunda e Quarta, das 15h às 17h  
Segunda Aula Teórica:  
L160  
Quarta Aula Pratica:  
L546  
Objetivos da Disciplina  
Apresentar os fundamentos avançados de uma  
linguagem de programação.  
Ao final do curso o aluno será deverá capaz de:  
Compreender as principais técnicas de programação e algoritmos  
básicos;  
Conhecer e manipular as principais estruturas de dados.  
Esquema de Aulas  
Aulas em sala de aula (teóricas)  
Aulas em laboratório (teóricas e práticas)  
Monitores  
Listas de exercícios  
Conceitos de Referência  
Soluções conceituais (antes das implementações)  
Desenvolvimento de programas em módulos  
(programação modular)  
Encapsulamento e Reuso (TAD)  
Algoritmos e Estruturas  
Iteração vs Recursão  
Avaliação da eficiência e comparação de algoritmos  
(complexidade de algoritmos).  
Ementa da Disciplina  
Parte 1 - Elementos da Linguagem (P1)  
Ponteiros  
Vetores e Alocação Dinâmica  
Strings  
Recursão  
Tipos Estruturados  
Ementa da Disciplina  
Parte 2 - Algoritmos Básicos e Listas (P2)  
Vetores de Ponteiros  
Busca  
Ordenação  
Listas Encadeadas  
Ementa da Disciplina  
Parte 3 - Estruturas de Dados (P3)  
Módulos, Encapsulamento e TAD  
Pilha  
Árvores Binárias  
Árvores Binárias de Busca  
Software  
O software que será utilizado nesta disciplina é o  
Microsoft Visual Studio 2010.  
Você pode consegui-lo no laboratório de graduação  
(LabGrad) através do empréstimo de software, mas  
para isso você precisará estar cadastrado como  
usuário do laboratório.  
Critério de Avaliação  
media = (G1 + G2 + G3) / 3;  
if (media < 5.0) || ((G1 < 3.0) || (G2 < 3.0) || (G3 < 3.0))  
{
procedimento_fazer_g4();  
}
else  
{
printf(“aluno aprovado!”);  
}
Critério de Avaliação  
void procedimento_fazer_g4()  
{
if (G4 >= 3.0)  
media_final = (GM1 + GM2 + G4) / 3;  
else  
media_final = (G1 + G2 + G3 + (G4 * 3)) / 6;  
if (media_final >= 5.0)  
printf(“aluno aprovado!”);  
else  
printf(“aluno reprovado!”);  
}
Critério de Avaliação  
Listas de exercícios:  
Valem 0.5 ponto extra na nota de cada prova;  
Exercícios individuais;  
Aulas praticas para a resolução dos exercícios;  
Entrega por email;  
Exercícios serão corrigidos pelo professor;  
Não serão aceitas respostas copiadas de colegas ou  
da internet;  
Provas  
P1 Pratica  
Ponteiros, Vetores e Alocação Dinâmica, Strings, Recursão, Tipos  
Estruturados  
P2 Teórica  
Vetores de Ponteiros, Busca, Ordenação, Listas Encadeadas  
P3 Teórica  
Módulos, Encapsulamento e TAD, Pilha, Árvores Binárias, Árvores  
Binárias de Busca  
P4 Teórica  
Toda a matéria  
Provas - Datas  
As datas ainda serão definidas.  
As datas, locais e horários das provas devem ser  
sempre verificados no ciclo básico.  
Provas  
Revisão de Prova:  
Por escrito no corpo da prova  
P4 Opcional:  
Aluno deve avisar ao professor  
Grau Final pode aumentar ou diminuir  
Aluno pode desistir após período de tolerância a atraso  
(
prova “NÃO CORRIGIR ESTA PROVA” assinada (a caneta)  
geralmente 30 min), mediante declaração no corpo da  
Entrega de Provas:  
Todas as provas devem ser devolvidas pelos alunos  
Monitoria  
Monitoria de Turma  
Monitoria Extraclasse  
Consultar site da disciplina para ver sala e horários  
Frequentar regularmente as monitorias extraclasses  
Esta disciplina se aprende praticando exercícios  
regularmente. Mais do que treinar novas técnicas, esta  
disciplina requer mudanças na forma de raciocinar e tomar  
decisões o que só ocorre com a prática!  
Controle de Turma  
Presença OBRIGATÓRIA (75%)  
Lista de chamada  
Tolerância de 20 minutos de atraso  
Transferência informal não é possível  
Alunos não podem assistir a aulas em turmas  
diferentes das suas turmas oficiais (onde estão  
matriculados)  
Problemas de infraestrutura, planejamento e registro  
Cadastramentos  
Ativar conta no LAB-GRAD (mesmo quem já tem!)  
Aulas práticas  
Comunicação oficial do DI  
Ativar conta no RDC  
Cadastramento no site da disciplina  
Impressão  
RDC: 100 páginas por período  
DI: 100 páginas por período  
Comportamento  
Nas aulas práticas usar apenas o MS Visual Studio. Nada de FACEBOOK,  
SKYPE, JOGOS, ...  
Nas aulas práticas, criar projetos apenas no diretório particular do aluno  
(
crie diretório chamado “ProjetosProg2”)  
No laboratório, não levar mochilas para a bancada de computadores  
deixá-las no local apropriado)  
(
No laboratório, desligar a máquina após o uso  
No laboratório, salve trabalhos no pendrive, com regularidade  
Verificar regularmente sites (geral e da turma) e e-mail oficial  
Prática Extraclasse Constante (mínimo de 4h/semana)  
Esta disciplina se aprende praticando exercícios regularmente. Mais do  
que treinar novas técnicas, esta disciplina requer mudanças na forma  
de raciocinar e tomar decisões o que ocorre com a prática!  
Programação II  
Site da disciplina:  
http://www.inf.puc-rio.br/~inf1007/  
Site do professor:  
http://www.inf.puc-rio.br/~elima/prog2/  
Contato:  
Bibliografia Principal  
Celes, W., Cerqueira, R., Rangel, J.L.,  
Introdução a Estruturas de Dados Uma  
introdução com técnicas de programação  
em C, Ed. Campus, 2004