Algoritmos Lógica e Programação2016-2
Prof. Me. Adelson Felipe Dias Nogueira
E-mail: [email protected]
Plano de Ensino
MÓDULOS:
1.Conceitos iniciais de Algoritmos:
2.Desenvolvimento de Algoritmos:
3.Estruturas de seleção e repetição:
4.Vetores e matrizes:
Conteúdo Plano de Ensino
1. Conceitos iniciais de algoritmos:
Definição de algoritmos.
Histórico e perspectivas para a linguagem.
O ambiente de programação.
Formas de representação de algoritmos.
Expressões literais, lógicas e aritméticas.
Tipos de dados, variáveis e constantes.
Declaração de variáveis.
Conteúdo Plano de Ensino
2. Desenvolvimento de algoritmos e estruturas de seleção:
Instruções primitivas: entrada de dados, atribuição e saída
Comandos de entrada de dados, atribuição e saída.
Declaração de constantes.
Estrutura condicional simples.
Estrutura condicional composta.
Estrutura condicional composta e encadeada.
Conteúdo Plano de Ensino
3. Estruturas de seleção e repetição:
Estrutura de múltipla escolha (CASE)
Repetição condicional com teste no final.
Repetição condicional com teste no início.
Repetição controlada por variável.
Conteúdo Plano de Ensino
4. Vetores e matrizes:
Repetição controlada por variável.
Repetição condicional com teste no início.
Repetição condicional com teste no final.
Aplicações utilizando vetores e matrizes.
Operações sobre vetores e matrizes.
Os vetores como estrutura de dados.
Aplicações dos vetores como estrutura de dados
Objetivo da Disciplina
Desenvolver conhecimentos e habilidades de forma a capacitar osalunos a desenvolver programas em Linguagem Estruturada,especificamente usando a linguagem C.
O Engenheiro é um profissional talhado para resolver problemas enormalmente problemas complexos que necessitam de métodospara se chegar a solução. Elaborar um algoritmo pode ser um dosmétodos para se buscar a solução.
Material da Disciplina
BIBLIOGRAFIA ADOTADA:
ALL, Piva Junior, Dilermando Et. ALGORTIMOS E PRÓGRAMAÇÃO DE COMPUTADORES, Rio de Janeiro: Campus, 2012.
OLIVEIRA, Jayr Figueiredo DE; MANZANO, José Augusto N.G.. ESTUDO DIRIGIDO DE ALGORITMOS, 14. ed. São Paulo: Érica, 2011.
MARQUES, Souza, Marco Antônio. ALGORITMOS E LÓGICA DE PROGRAMAÇÃO: um texto introdutório para engenharia. 2 ed. São Paulo: Cengage Lerning, 2011. 1v 234 p.
Material da Disciplina
BIBLIOGRAFIA COMPLEMENTAR
COIMBRA, Araujo, Everton. Algoritmos: : Fundamentos e Prática. 2. ed. Santa Catarina: Visual Books, 2007. 1 v. 414 p. (1).
CARAM., Saliba Walter Luiz. Técnicas de programação: uma abordagem estruturada. São Paulo: Makron, 1993. 1 v. 141 p. (1).
GOMES., Ascencio Ana Fernand. Fundamentos da Programação de Computadores: Algoritimos, Pascal, C/C++ e Java. 2. ed. São Paulo: Pearson Prentice, 2007. 1 v. 434 p. (1).
DEITEL, H. M. Deitel / P. J.. C++ Como Programar: Apresentando Projeto Orientado a Objeto Com Uml. 3. ed. São Paulo: Prentice Hall, 2006. 1 v. 163 p.
LA, Guimarães, Ângelo De Moura;. Algoritmos e estruturas de dados. Rio de Janeiro: LTC - Livros Técnicos e Cientí, 1944. 216 p.
Avaliações
Metodologia
O processo ensino-aprendizagem será conduzido adotando o conceito de Aula
Invertida, subdividida em três momentos:
A Pré-Aula, a Aula e a Pós-Aula. Na primeira etapa o discente, atende as
orientações do docente preparando-se, antecipadamente, para a Aula e volta a
fazê-lo nas proposições que busquem fixar os conteúdos ministrados (a Pós-
Aula).
AULA MODELO KLS 2.0
AULA MODELO KLS 2.0
Cronograma
Calendário
Pontos de atenção Enturmação. Chamada. Horário.
o De 9 Horas até as 10:15 horas.o De 10:45 Horas até as 12:00 horas.
Novo modelo de Avaliação – KLS 2.0 Hierarquia na comunicação entre:
o Aluno Professor Coordenador. Avaliar 2016:
o A partir de 22 de Agosto. o Inicio de Setembro acesso à plataforma.o Informativos em todo o mês de Setembro.o Acesso aos alunos de 3 a 30 de outubro.o Taxa mínima de 70%, não é amostragem.
• Serão 12 indicadores. 1 a 6 – Avaliação Negativa 7 e 8 - Neutros 9 e 10 – Avaliação positiva.
Algoritmos x Programação
• Algoritmo é um conjunto finito de regras, bem definidas,para a solução de um problema em um tempo finito;
• Programa é um algoritmo codificado (escrito) em umalinguagem de programação (C/C++).
Algoritmos
• Algoritmo é uma sequência finita de passos que levam aexecução de uma tarefa. Ou seja, uma receita, umasequência de instruções para uma meta específica.
• Ex: chupar uma balapegar uma balaretirar o papelcolocar a bala na bocajogar papel no lixo
Algoritmos
• A principal meta da criação de um algoritmo é resolverproblemas por meio de soluções lógicas para obterresultados eficientes (corretos) e eficazes (comqualidade).
• Mas se as soluções não forem bem planejadas (passo apasso), com certeza essa meta não será atingida.
Algoritmos
• Abaixo são descritas ações de quem vai a um banco, mas veja se é possívelretirar o dinheiro obedecendo a sequência descrita:
• Sair do banco• Aguardar a vez de ser atendido• Entrar na fila do caixa• Digitar a senha• Entrar no banco• Informar o valor a ser retirado• Procurar a fila do caixa• Pegar o comprovante do caixa, o cartão e o dinheiro• Entregar o cartão eletrônico ao funcionário que atende no
caixa• Conferir o valor em dinheiro
Algoritmos
• Um algoritmo eficiente deve obedecer as seguintes premissasbásicas no momento de sua construção:
Definir ações simples e sem ambiguidade;
Organizar as ações de forma ordenada;
Estabelecer as ações dentro de uma sequência finita depassos.
Algoritmos
• Abaixo segue um exemplo simples de algoritmo, para a troca de umpneu furado:
• desligar o carro• pegar as ferramentas (chave e macaco)• pegar o estepe• suspender o carro com o macaco• desenroscar os 4 parafusos do pneu furado• colocar o estepe• enroscar os 4 parafusos• baixar o carro com o macaco• guardar as ferramentas
Algoritmos
• Um algoritmo é capaz de realizar tarefas como:
• Ler e escrever dados;
• Avaliar expressões algébricas, relacionais e lógicas;
• Tomar decisões com base nos resultados das expressõesavaliadas;
• Repetir um conjunto de ações de acordo com umacondição.
Algoritmos
• Segue outro exemplo, para pegar um ônibus, que possui estruturas maiscomplexas :
• ir até a parada• enquanto ônibus não chega faça• esperar ônibus• subir no ônibus• pegar passagem• se não há passagem então• pegar dinheiro• pagar o cobrador• troco = dinheiro - passagem• enquanto banco não está vazio faça• ir para o próximo• sentar• . . .
Programas
• Um computador é somente capaz de realizar estritamente as tarefasque lhe forem delegadas e que façam parte do conjunto daquelasações que ele pode executar -> algoritmos.
• Programas são algoritmos escritos em uma linguagem deprogramação e que são interpretados e executados por umamáquina.
Linguagem de Programação
Linguagem de Programação
Representando Algoritmos
Existem duas principais formas de representação para algoritmos:
• Fluxograma• Pseudocódigo
Fluxograma
É a apresentação do algoritmo em formato gráficopossibilitando o planejamento da estrutura do programa efacilitando a validação da estrutura planejada.
Cada operação a ser executada é representada por um símbolocuja forma identifica o tipo de processo envolvido.
Fluxograma - Exemplo
Pseudocódigo
Pseudocódigo - Estrutura
Dúvidas