Algoritmos Lógica e Programação 2016-2 Prof. Me. Adelson Felipe Dias Nogueira E-mail: adelson.nogueira@pitagoras.com.br
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 os alunos a desenvolver programas em Linguagem Estruturada, especificamente usando a linguagem C. O Engenheiro é um profissional talhado para resolver problemas e normalmente problemas complexos que necessitam de métodos para se chegar a solução. Elaborar um algoritmo pode ser um dos mé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 uma linguagem de programação (C/C++).
Algoritmos Algoritmo é uma sequência finita de passos que levam a execução de uma tarefa. Ou seja, uma receita, uma sequência de instruções para uma meta específica. Ex: chupar uma bala pegar uma bala retirar o papel colocar a bala na boca jogar papel no lixo
Algoritmos A principal meta da criação de um algoritmo é resolver problemas por meio de soluções lógicas para obter resultados eficientes (corretos) e eficazes (com qualidade). Mas se as soluções não forem bem planejadas (passo a passo), 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ível retirar 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 premissas bá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 de passos.
Algoritmos Abaixo segue um exemplo simples de algoritmo, para a troca de um pneu 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ões avaliadas; Repetir um conjunto de ações de acordo com uma condição.
Algoritmos Segue outro exemplo, para pegar um ônibus, que possui estruturas mais complexas : 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 tarefas que lhe forem delegadas e que façam parte do conjunto daquelas ações que ele pode executar -> algoritmos. Programas são algoritmos escritos em uma linguagem de programação e que são interpretados e executados por uma má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áfico possibilitando o planejamento da estrutura do programa e facilitando a validação da estrutura planejada. Cada operação a ser executada é representada por um símbolo cuja forma identifica o tipo de processo envolvido.
Fluxograma - Exemplo
Pseudocódigo
Pseudocódigo - Estrutura
Dúvidas