Mudanças entre as edições de "PRG29002 - Programação I - Eng.Telecom 2017-1"
Ir para navegação
Ir para pesquisar
Linha 9: | Linha 9: | ||
*Página no moodle: [http://moodlenovo.sj.ifsc.edu.br/course/view.php?id=70 moodle] | *Página no moodle: [http://moodlenovo.sj.ifsc.edu.br/course/view.php?id=70 moodle] | ||
*Monitoria: [[Programa_de_monitoria_dos_cursos_superiores_de_Telecomunica%C3%A7%C3%B5es]]<br> | *Monitoria: [[Programa_de_monitoria_dos_cursos_superiores_de_Telecomunica%C3%A7%C3%B5es]]<br> | ||
+ | |||
+ | =Plano de aula= | ||
+ | {{Cronograma-top}} | ||
+ | {{Cl|1 |9/2 | 2 | Aula inaugural, apresentação do professor e turma, apresentação da disciplina e introdução aos algoritmos | Lab Redes 2}} | ||
+ | {{Cl|2 |14/2 | 2 | Introdução ao fluxograma com resolução de exercícios | Lab Redes 1}} | ||
+ | {{Cl|3 |16/2 | 2 | Prática de fluxogramas | Lab Redes 2}} | ||
+ | {{Cl|4 |21/2 | 2 | Introdução ao pseudocódigo com resolução de exercícios | Lab Redes 1}} | ||
+ | {{Cl|5 |23/2 | 2 | Pseudocódigo: Estruturas de repetição e sub-rotinas | Lab Redes 2}} | ||
+ | {{Cl|6 |2/3 | 2 | Prática: Resolução de problemas em pseudocódigo e fluxogramas (declaração de variáveis, leia e escreva, uso de condicionais e biblioteca portugol) | Lab Redes 2}} | ||
+ | {{Cl|7 |7/3 | 2 | Pseudocódigo: Uso de vetores e sub-rotinas | Lab Redes 1}} | ||
+ | {{Cl|8 |9/3 | 2 | Prática: Resolução de problemas com vetores e sub-rotinas | Lab Redes 2}} | ||
+ | {{Cl|9 |14/3 | 2 | Pseudocódigo: Registros e revisão geral (preparação para prova) | Lab Redes 1}} | ||
+ | {{Cl|10 |16/3 | 2 | Pseudocódigo e fluxogramas: Resolução de exercícios (preparação para prova) | Lab Redes 2}} | ||
+ | {{Cl|11 |21/3 | 2 | Avaliação: Introdução a algoritmos (fluxograma e pseudocódigo) | Lab Redes 1}} | ||
+ | {{Cl|12 |23/3 | 2 | Prática: Correção da Avaliação / possível realização de recuperação | Lab Redes 2}} | ||
+ | {{Cl|13 |28/3 | 2 | Introdução ao C, primeiros conceitos de compilação, variáveis, controle de fluxo com if… else, switch, entrada e saída de dados com printf e scanf, | Lab Redes 1}} | ||
+ | {{Cl|14 |30/3 | 2 | Continuação C, condicionais, operadores relacionais, operadores lógicos. Prática: Controle de fluxo em C, entrada e saída de dados | Lab Redes 2}} | ||
+ | {{Cl|15 |4/4 | 2 | Continuação C: estruturas de repetição | Lab Redes 1}} | ||
+ | {{Cl|16 |6/4 | 2 | Prática: estruturas de repetição | Lab Redes 2}} | ||
+ | {{Cl|17 |11/4 | 2 | Continuação C: funções | Lab Redes 1}} | ||
+ | {{Cl|18 |13/4 | 2 | Prática: Funções em C | Lab Redes 2}} | ||
+ | {{Cl|19 |18/4 | 2 | Introdução a vetores e matrizes em C. Resolução de exercícios de vetores | Lab Redes 1}} | ||
+ | {{Cl|20 |20/4 | 2 | Prática: Resolução de exercícios de fixação de vetores. | Lab Redes 2}} | ||
+ | {{Cl|21 |25/4 | 2 | Compreendendo melhor a função main e exit, gerando números pseudo-aleatórios, defines e operadores e precedências | Lab Redes 1}} | ||
+ | {{Cl|22 |27/4 | 2 | Prática: Exercícios de C | Lab Redes 2}} | ||
+ | {{Cl|23 |2/5 | 2 | Avaliação: C até funções | Lab Redes 1}} | ||
+ | {{Cl|24 |4/5 | 2 | Prática: Correção da Avaliação / possível realização de recuperação | Lab Redes 2}} | ||
+ | {{Cl|25 |9/5 | 2 | Structs e Unions | Lab Redes 1}} | ||
+ | {{Cl|26 |11/5 | 2 | Prática: Structs e unions | Lab Redes 2}} | ||
+ | {{Cl|27 |16/5 | 2 | Ponteiros | Lab Redes 1}} | ||
+ | {{Cl|28 |18/5 | 2 | Prática: Exercicios ponteiros | Lab Redes 2}} | ||
+ | {{Cl|29 |23/5 | 2 | Vetor de Ponteiros e Ponteiro Para Estruturas, typedef, recursividade, apresentação do projeto | Lab Redes 1}} | ||
+ | {{Cl|30 |25/5 | 2 | Prática de Ponteiros e structs | Lab Redes 2}} | ||
+ | {{Cl|31 |30/5 | 2 | Avaliação: C até structs | Lab Redes 1}} | ||
+ | {{Cl|32 |1/6 | 2 | Prática: Correção da Avaliação / possível realização de recuperação / Desenvolvimento do projeto | Lab Redes 2}} | ||
+ | {{Cl|33 |6/6 | 2 | Alocação dinâmica de memória, apresentação do projeto | Lab Redes 1}} | ||
+ | {{Cl|34 |8/6 | 2 | Prática: Desenvolvimento do Projeto | Lab Redes 2}} | ||
+ | {{Cl|35 |13/6 | 2 | Desenvolvimento do Projeto | Lab Redes 1}} | ||
+ | {{Cl|36 |20/6 | 2 | Desenvolvimento do Projeto | Lab Redes 1}} | ||
+ | {{Cl|37 |22/6 | 2 | Prática: Desenvolvimento do Projeto | Lab Redes 2}} | ||
+ | {{Cl|38 |27/6 | 2 | Desenvolvimento do Projeto | Lab Redes 1}} | ||
+ | {{Cl|39 |29/6 | 2 | Avaliação: Apresentação do projeto | Lab Redes 2}} | ||
+ | {{Cl|40 |4/7 | 2 | Recuperação: Projeto | Lab Redes 1}} | ||
+ | {{cronograma-botton |80}} | ||
=Diário de aula= | =Diário de aula= |
Edição das 15h14min de 10 de fevereiro de 2017
Dados importantes
- Professor da Disciplina: Cleber Jorge Amaral
- Email: cleber.amaral@ifsc.edu.br
- Atendimento paralelo: terças e quintas das 12:00 as 13:00 na Sala Multimeios de Tele (ao lado da reprografia)
- Agenda do professor: Ver página
Dados da Disciplina
- Ementa da disciplina na wiki: Engenharia de Telecomunicações 2ª Fase
- Página no moodle: moodle
- Monitoria: Programa_de_monitoria_dos_cursos_superiores_de_Telecomunicações
Plano de aula
Aula | Data | Horas | Conteúdo | Recursos | |
---|---|---|---|---|---|
1 | 9/2 | 2 | Aula inaugural, apresentação do professor e turma, apresentação da disciplina e introdução aos algoritmos | Lab Redes 2 | |
2 | 14/2 | 2 | Introdução ao fluxograma com resolução de exercícios | Lab Redes 1 | |
3 | 16/2 | 2 | Prática de fluxogramas | Lab Redes 2 | |
4 | 21/2 | 2 | Introdução ao pseudocódigo com resolução de exercícios | Lab Redes 1 | |
5 | 23/2 | 2 | Pseudocódigo: Estruturas de repetição e sub-rotinas | Lab Redes 2 | |
6 | 2/3 | 2 | Prática: Resolução de problemas em pseudocódigo e fluxogramas (declaração de variáveis, leia e escreva, uso de condicionais e biblioteca portugol) | Lab Redes 2 | |
7 | 7/3 | 2 | Pseudocódigo: Uso de vetores e sub-rotinas | Lab Redes 1 | |
8 | 9/3 | 2 | Prática: Resolução de problemas com vetores e sub-rotinas | Lab Redes 2 | |
9 | 14/3 | 2 | Pseudocódigo: Registros e revisão geral (preparação para prova) | Lab Redes 1 | |
10 | 16/3 | 2 | Pseudocódigo e fluxogramas: Resolução de exercícios (preparação para prova) | Lab Redes 2 | |
11 | 21/3 | 2 | Avaliação: Introdução a algoritmos (fluxograma e pseudocódigo) | Lab Redes 1 | |
12 | 23/3 | 2 | Prática: Correção da Avaliação / possível realização de recuperação | Lab Redes 2 | |
13 | 28/3 | 2 | Introdução ao C, primeiros conceitos de compilação, variáveis, controle de fluxo com if… else, switch, entrada e saída de dados com printf e scanf, | Lab Redes 1 | |
14 | 30/3 | 2 | Continuação C, condicionais, operadores relacionais, operadores lógicos. Prática: Controle de fluxo em C, entrada e saída de dados | Lab Redes 2 | |
15 | 4/4 | 2 | Continuação C: estruturas de repetição | Lab Redes 1 | |
16 | 6/4 | 2 | Prática: estruturas de repetição | Lab Redes 2 | |
17 | 11/4 | 2 | Continuação C: funções | Lab Redes 1 | |
18 | 13/4 | 2 | Prática: Funções em C | Lab Redes 2 | |
19 | 18/4 | 2 | Introdução a vetores e matrizes em C. Resolução de exercícios de vetores | Lab Redes 1 | |
20 | 20/4 | 2 | Prática: Resolução de exercícios de fixação de vetores. | Lab Redes 2 | |
21 | 25/4 | 2 | Compreendendo melhor a função main e exit, gerando números pseudo-aleatórios, defines e operadores e precedências | Lab Redes 1 | |
22 | 27/4 | 2 | Prática: Exercícios de C | Lab Redes 2 | |
23 | 2/5 | 2 | Avaliação: C até funções | Lab Redes 1 | |
24 | 4/5 | 2 | Prática: Correção da Avaliação / possível realização de recuperação | Lab Redes 2 | |
25 | 9/5 | 2 | Structs e Unions | Lab Redes 1 | |
26 | 11/5 | 2 | Prática: Structs e unions | Lab Redes 2 | |
27 | 16/5 | 2 | Ponteiros | Lab Redes 1 | |
28 | 18/5 | 2 | Prática: Exercicios ponteiros | Lab Redes 2 | |
29 | 23/5 | 2 | Vetor de Ponteiros e Ponteiro Para Estruturas, typedef, recursividade, apresentação do projeto | Lab Redes 1 | |
30 | 25/5 | 2 | Prática de Ponteiros e structs | Lab Redes 2 | |
31 | 30/5 | 2 | Avaliação: C até structs | Lab Redes 1 | |
32 | 1/6 | 2 | Prática: Correção da Avaliação / possível realização de recuperação / Desenvolvimento do projeto | Lab Redes 2 | |
33 | 6/6 | 2 | Alocação dinâmica de memória, apresentação do projeto | Lab Redes 1 | |
34 | 8/6 | 2 | Prática: Desenvolvimento do Projeto | Lab Redes 2 | |
35 | 13/6 | 2 | Desenvolvimento do Projeto | Lab Redes 1 | |
36 | 20/6 | 2 | Desenvolvimento do Projeto | Lab Redes 1 | |
37 | 22/6 | 2 | Prática: Desenvolvimento do Projeto | Lab Redes 2 | |
38 | 27/6 | 2 | Desenvolvimento do Projeto | Lab Redes 1 | |
39 | 29/6 | 2 | Avaliação: Apresentação do projeto | Lab Redes 2 | |
40 | 4/7 | 2 | Recuperação: Projeto | Lab Redes 1 | |
TOTAL | 80 |
Diário de aula
Introdução aos algoritmos utilizando fluxograma
- Apresentada ementa através dos slides disponibilizados.
- Conceito de Algoritmo: Sequência ordenada de passos para resolução de um dado problema.
- Para que serve e como abordaremos?
- Algoritmos estão associados a automação de processos, permitem descrever os passos que uma máquina (mecânica ou eletrônica) irá realizar geralmente de maneira repetitiva (garantindo repetibilidade).
- Trabalharemos neste curso com problemas bem definidos que possuem objetivos, caminhos de solução e expectativa de solução claros.
- Formas de representação
- Descrição narrativa: Descrição informal de uma situação e passos para solução de um problema
- Fluxograma: Operações são representadas por formas geométricas
- Pseudo-código: Representação de comportamento e ações por meio de regra predefinida
- Códigos de programação: Um PROGRAMA implementa um algoritmo. É o algoritmo materializado na forma de uma sequência de instruções.
- Descrição narrativa
- Trata-se de um texto livre mas é sugerido organizar em tópicos como os seguintes:
- Cenário;
- Problema;
- Dados de entrada e saída;
- Solução esperada;
- Etapas;
- Solução proposta.
- Exemplos comuns são receitas de culinária, mas pode-se descrever de forma narrativa qualquer tipo de algoritmo.
- Descreva o algoritmo para fazer um ovo frito
- Descreva o algoritmo para cozinhar macarrão instantâneo
- Trata-se de um texto livre mas é sugerido organizar em tópicos como os seguintes:
- Fluxogramas
- Um fluxograma é uma linguagem semi-gráfica que pode ser utilizada para descrição de algoritmos.
- Existem diferentes padrões, aqui utilizaremos o ANSI.
- Exemplo:
- Outros exemplos de algoritmos para exercitar fluxogramas (pode-se abstrair e fazer de modo simplificado na forma de uma série de processos ou modo mais completo com condicionais):
- Fritar um ovo
- Cozinhar macarrão instantâneo
- Cozinhar miojo com ovo
- Trocar o pneu de um carro
- Enviar um e-mail
- Pegar um livro na biblioteca
- Calcular a área de um cômodo
- Outros conceitos trabalhados
- abstração
- estruturas de dados