Mudanças entre as edições de "PRG29002 - Programação I - Eng.Telecom 2016-2"
Ir para navegação
Ir para pesquisar
Linha 21: | Linha 21: | ||
==Diário de aula== | ==Diário de aula== | ||
+ | ===Introdução aos algoritmos=== | ||
{{collapse top|Aula inaugural e introdução aos algoritmos}} | {{collapse top|Aula inaugural e introdução aos algoritmos}} | ||
*Apresentada ementa através dos slides disponibilizados. | *Apresentada ementa através dos slides disponibilizados. | ||
Linha 35: | Linha 36: | ||
**Em sala não tivemos tempo para definir como funcionaria a gravação do histórico das chaves, pense numa forma de controlar este processo. Já usou excel, consegue imaginar uma maneira? | **Em sala não tivemos tempo para definir como funcionaria a gravação do histórico das chaves, pense numa forma de controlar este processo. Já usou excel, consegue imaginar uma maneira? | ||
**Consegue imaginar o fluxo de operação? Digo, o programa mostrará um menu, o usuário entrará com uma informação, o programa então mostra certa mensagem... como são os ciclos de empréstimo e devolução? Como funcionaria a consulta de histórico? E o cadastro de chaves e pessoas? | **Consegue imaginar o fluxo de operação? Digo, o programa mostrará um menu, o usuário entrará com uma informação, o programa então mostra certa mensagem... como são os ciclos de empréstimo e devolução? Como funcionaria a consulta de histórico? E o cadastro de chaves e pessoas? | ||
+ | {{collapse bottom}} | ||
+ | {{collapse top|Algoritmos - fluxogramas}} | ||
+ | *Concluindo a análise do problema das chaves, uma descrição que proponho é: Desenvolver um programa em C para registrar os empréstimos e devoluções de chaves do almoxarifado de tele. Deve ser possível cadastrar as chaves (através de um apelido: R1, R2, CAD2...), cadastrar as pessoas autorizadas a pegar as chaves (matricula e nome) e mostrar um quadro em tela que exibe o estado atual dos empréstimos. Deve enfim possuir uma função que mostra o histórico de emprestimos e devoluções. Este problema agora pode ser perfeitamente descrito em um algoritmo, não? Vejamos como poderia ficar a interface: | ||
+ | **Exemplo de Menu principal do programa | ||
+ | - - - - - - - - - - - - - - - - - - - - - - - | ||
+ | Estado atual das chaves: | ||
+ | R1 = Emprestada (João) | ||
+ | R2 = Disponível | ||
+ | CAD2 = Emprestada (Pedro) | ||
+ | CAD3 = Disponível | ||
+ | - - - - - - - - - - - - - - - - - - - - - - - | ||
+ | 1: pegar/devolver uma chave | ||
+ | 2: cadastro de chaves | ||
+ | 3: cadastro de pessoas | ||
+ | 4: ver historico de emprestimos | ||
+ | 5: sair do programa | ||
+ | Digite a opção ______ | ||
+ | **Exemplo da opção 1 (pegar/devolver) | ||
+ | Digite o nome da chave a pegar ou devolver: ____ | ||
+ | **Exemplo da opção 2 (cadastro de chaves) | ||
+ | As chaves atualmente cadastradas são: R1, R2, CAD2, CAD3 | ||
+ | Digite um nome existente para deletar ou um novo nome para criar uma nova: ____ | ||
+ | *Agora que temos um exemplo de um problema bem definido. | ||
+ | *Vimos antes que uma consulta como "Qual a melhor maneira de vir do IFSC do centro até o IFSC de São José" não seria bem definida. Há varios detalhes que não estão declarados. | ||
+ | *Outro exemplo, imagine como poderia ser desenvolvido um algoritmo que tem a missão de realizar a distribuição de móveis em uma casa. Esta é uma tarefa complexa, muitos até contratam arquiteto e decorador para esta tarefa pois envolve preferencias, requisitos de circulação, utilização de pontos de hidráulica, elétrica, uso de eletrodomésticos, enfim, são muitos detalhes tecnicos e de gosto do usuário. | ||
+ | *Problemas desta natureza precisam de tecnicas de inteligencia artificial como "Machine Learning" que dá a habilidade a máquina de aprender sem ter sido explicitamente programada para aquela tarefa. Eles vão aprendendo com a massa de dados que vai sendo gerada e pelo comportamento do usuário que está operando o software. Com o tempo ele "aprende" que o usuário costuma se deslocar de carro, por exemplo, que pelo seu histórico costuma se deslocar em determinados horários, por sua agenda do google planeja ir a determinado local, enfim. | ||
+ | *Introdução ao fluxograma | ||
+ | **Ver o vídeos e desenvolver em sala os fluxogramas | ||
+ | *Exercícios: | ||
+ | *#Desenvolve um fluxograma para cálculo da média de dois números fracionários exibindo o resultado | ||
+ | *#Desenvolva um fluxograma que calcula a média de consumo de um veículo. Deve obter a distância que um veículo percorreu e a quantidade de litros consumida, exibindo em tela o consumo médio em km/l. | ||
+ | |||
+ | {{collapse bottom}} | ||
+ | {{collapse top|Fluxogramas}} | ||
+ | *Desenvolver o fluxograma para o algoritmo de controle das chaves do almoxarifado | ||
{{collapse bottom}} | {{collapse bottom}} |
Edição das 19h41min de 14 de agosto de 2016
Professor da Disciplina: Cleber Jorge Amaral
e-mail: cleber.amaral@ifsc.edu.br
Ementa de PRG29002
- Ementa da disciplina na wiki: Engenharia de Telecomunicações 2ª Fase
Critérios e instrumentos de avaliação
- Conceitos numéricos entre 0 e 10. 0 é reservado para alunos com frequência insuficiente
- N1 = Prova teórica sobre pseudocodigo e fluxograma (sem apoio de computador)
- N2 = Prova prática sobre C
- N3 = Apresentação de projeto de desenvolvimento em C (Avaliação do projeto = 30% e da performance do aluno na apresentação = 70%)
- Recuperação realizada após cada prova e do trabalho uma reapresentação que valerá no máximo conceito 7.
- Média = (N1+N2+N3)/3
- Ter 75% de frequência.
Datas importantes
- Provas e prazos a definir
Material de aula
Diário de aula
Introdução aos algoritmos
Aula inaugural e introdução aos algoritmos |
---|
|
Algoritmos - fluxogramas |
---|
- - - - - - - - - - - - - - - - - - - - - - - Estado atual das chaves: R1 = Emprestada (João) R2 = Disponível CAD2 = Emprestada (Pedro) CAD3 = Disponível - - - - - - - - - - - - - - - - - - - - - - - 1: pegar/devolver uma chave 2: cadastro de chaves 3: cadastro de pessoas 4: ver historico de emprestimos 5: sair do programa Digite a opção ______
Digite o nome da chave a pegar ou devolver: ____
As chaves atualmente cadastradas são: R1, R2, CAD2, CAD3 Digite um nome existente para deletar ou um novo nome para criar uma nova: ____
|
Fluxogramas |
---|
|