Buscar

Aula01 LOGICA de Programacao introducao

Prévia do material em texto

Lógica de 
Programação 
 
Aula 01 - Introdução 
Ementa (resumo) 
—  Introdução à Lógica de Programação 
—  Lógica de programação. Algoritmos e formas de 
representação. Fluxograma. Portugues estruturado (ou 
portugol). 
—  Linguagem Visualg 
—  Linguagem de programação C++ 
—  Estrutura Sequencial 
—  Estruturas de Decisão ou Condicional 
—  Estruturas de Repetição 
—  Função 
Introdução 
Por que estudar Programação ? 
—  Todos nós programamos. 
—  Ao programar desenvolvemos algoritmos 
—  Ao programar utilizamos lógica 
Algoritmo e Programa 
—  Algoritmo 
—  Sequência de passos finitos com o 
objetivo de solucionar um problema. 
—  Programa de computador 
—  É um algoritmo escrito numa linguagem 
de programação 
Problema 
Solução Importante: Algoritmo não é a solução de um 
problema. É uma alternativa de solução de um 
problema. 
Por que estudar Programação ? 
Algoritmo e Programa 
—  O algoritmo, do ponto de vista computacional, tem 
um papel fundamental por ser o elo de ligação 
entre dois mundos (real e computacional). 
—  A atividade de programação começa com a 
construção do algoritmo. 
Mundo real Máquina 
C , J a v a , C + + , 
Delphi, Python, ... 
Algoritmo 
—  Futuros Engenheiros 
Vocês programam ? 
Vocês irão desenvolver algoritmos em suas carreiras? 
SIM 
SIM 
SIM 
SIM 
SIM 
SIM 
SIM 
SIM 
SIM 
SIM 
SIM 
SIM 
SIM 
SIM 
SIM 
SIM 
SIM 
SIM 
SIM 
SIM 
Problemas podem ser complexos, portanto algoritmos podem ser complexos 
Por que estudar Programação ? 
Algoritmo 
—  Algoritmo para fazer uma prova 
—  Ler a prova; 
—  Pegar caneta; 
—  Enquanto ((houver questão em branco) e (houver 
tempo)) faça 
—  Se (souber a questão) 
Resolva-a; 
—  Senão 
Pule para a próxima; 
—  Entregar a prova; 
Um outro algoritmo?? 
Exemplos Problemas que envolvem Lógica 
Algoritmo 
—  Algoritmo para levar um leão, uma cabra e um pedaço de 
grama de um lado para outro do rio, usando um bote para 
tal tarefa. Sabe-se que nunca um leão pode ficar sozinho 
com uma cabra e nem a cabra sozinha com a grama. 
1- Levar a grama e o leão; 
2- Voltar com o leão; 
3- Deixar o leão; 
4- Levar a cabra; 
5- Deixar a cabra; 
6- Voltar com a grama; 
7- Levar o leão e a grama; 
Um outro algoritmo?? 
Exemplos Problemas que envolvem Lógica 
Problemas que envolvem 
Lógica 
—  Observe a figura abaixo 
Problemas que envolvem 
Lógica 
—  Observe a figura abaixo 
Problemas que envolvem 
Lógica 
—  Observe a figura abaixo 
Problemas que envolvem 
Lógica 
—  Viagem de 300km 
Problemas que envolvem 
Lógica 
—  Viagem de 300km 
—  Quanto falta andar para chegar ao meio da 
distância restante? 
Problemas que envolvem 
Lógica 
—  São 20 horas e 25 minutos. 
—  Quantas horas se passaram desde as 0 horas? 
Problemas que envolvem 
Lógica 
—  Qual é maior: –12 ou –11? 
Problemas que envolvem 
Lógica 
—  18 é divisível por 6? 
—  26 é divisível por 6? 
—  Como saber se número “a” é divisível por “b”? 
Problemas que envolvem 
Lógica 
—  Quantos nos divisíveis por 13 há entre 1 e 100? 
—  Quantos são divisíveis por 11 e 13 ... 
simultaneamente? 
—  E entre 1 e 1.000.000? 
Problemas que envolvem 
Lógica 
—  Quantos nos divisíveis por 13 há entre 1 e 100? 
—  Quantos são divisíveis por 11 e 13 ... 
simultaneamente? 
—  E entre 1 e 1.000.000? 
Vamos criar um 
programa? 
Métodos de Representação de Algoritmos 
—  Existem três tipos de representação de 
algoritmos: 
—  Descrição Narrativa à Utiliza linguagem natural 
—  Fluxograma à Representação gráfica. 
—  Pseudocódigo (Por tuguês estruturado) à 
Representação textual. 
 
Métodos de Representação de Algoritmos 
—  Características: 
—  Descrição Narrativa 
—  Não precisa aprender um conceito novo, a língua natural (ou 
portuguesa) já é bem conhecida. 
—  A língua natural dá espaço para diversas interpretações, podendo 
dificultar a transcrição desse algoritmo para o programa. 
—  Fluxograma. 
—  A representação gráfica é mais concisa que a representação textual. 
—  É necessário aprender a simbologia dos fluxogramas. 
—  Pseudocódigo. 
—  A transcrição para qualquer linguagem de programação é quase 
direta. 
—  É necessário aprender as regras do pseudocódigo. 
—  Exemplos: 
Algoritmo: trocar lâmpada 
 
Passo 1: pegar a lâmpada nova. 
Passo 2: pegar a escada. 
Passo 3: posicionar a escada embaixo da 
 lâmpada queimada. 
Passo 4: subir na escada com a lâmpada 
 nova. 
Passo 5: Retirar a lâmpada queimada. 
Passo 6: Colocar a lâmpada nova. 
Passo 7: Descer da escada. 
Passo 8: Ligar o interruptor. 
Passo 9: Guardar a escada. 
Passo 10: Jogar a lâmpada velha no lixo. 
Algoritmo: sacar dinheiro 
 
Passo 1: ir até o caixa eletrônico. 
Passo 2: colocar o cartão. 
Passo 3: digitar a senha. 
Passo 4: solicitar o saldo. 
Passo 5: se o saldo for maior ou 
 igual à quantia desejada, sacar 
 a quantia desejada; caso contrário 
sacar o valor do saldo. 
Passo 6: retirar dinheiro e cartão. 
Passo 7: sair do caixa eletrônico. 
Descrição Narrativa 
1) Faça um algoritmo em descrição narrativa que calcule a 
média aritmética do aluno dada duas notas na entrada, 
sabendo-se que a média é 7,0 para o aluno ser aprovado, caso 
contrário o aluno está reprovado. 
Descrição Narrativa (Exemplo) 
 
Fluxograma 
—  Conjunto de símbolos utilizados no fluxograma. 
Fluxograma (Exemplo) 
 
 2) Faça um algoritmo na 
forma de fluxograma que 
calcule a média aritmética 
do aluno dada duas notas na 
entrada, sabendo-se que a 
média é 7,0 para o aluno ser 
aprovado, caso contrário o 
aluno está reprovado. 
Pseudocódigo 
—  É uma forma genérica de escrever um algoritmo, 
ut i l izando uma l inguagem s imples, sem 
necessidade de conhecer a sintaxe de nenhuma 
linguagem de programação. 
Pseudocódigo (Exemplo) 
3) Faça um algoritmo em pseudocódigo que calcule a média 
aritmética do aluno dada duas notas na entrada, sabendo-se que 
a média é 7,0 para o aluno ser aprovado, caso contrário o aluno 
está reprovado. 
Visualg 
 
 
algoritmo “nome_do_algoritmo” 
 // Função: 
 // Autor: 
 // Data: 
 // Seção de Declarações 
var 
 
inicio 
 // Seção de Comandos 
 
fimalgoritmo 
Os comentários vêm com “//” no início da linha, serve para dar informações do 
programa, sobre o(s) autor(es), dicas do que parte do código faz, depuração do código 
(debug), etc. 
Estrutura: 
Métodos de Representação de Algoritmos 
—  Exemplo – Pseudocódigo (utilizando o programa Visualg). 
algoritmo "soma dois numeros" 
// Função : 
// Autor : 
// Data : 30/3/2010 
// Seção de Declarações 
var 
n1, n2, d: inteiro 
inicio 
// Seção de Comandos 
escreval("Digite dois numeros") 
leia(n1) 
leia(n2) 
d<-n1+n2 
escreva("A soma é igual a ", d) 
fimalgoritmo 
Tela inicial da ferramenta Visualg 
Bibliografia (básica) 
—  ASCENCIO. A. F. Gomes; CAMPOS, E. A. Veneruchi 
de; Fundamentos da programação de 
Computadores,2ed., São Paulo: Pearson Prentice 
Hall, 2007 
—  FARRER, Harry et al. Algoritmos estruturados. 3. 
ed. Rio de Janeiro: LTC, 2008. 
—  MANZANO, José Augusto Navarro Garcia; 
OLIVEIRA, Jayr Figueiredo de Algoritmos: lógica 
para desenvolvimento de programação de 
computadores. 17. ed. São Paulo: Érica, 2005. 
Bibliografia (complementar) 
—  BROOKSHEAR, J. Glenn. Ciência da computação: uma visão 
abrangente. 7. ed. Porto Alegre: Bookman, 2008. 
—  FORBELLONE,Andre Luiz Villar; EBERSPACHER, Henri Frederico. 
Lógica de programação: a construção de algoritmos e estruturas 
de dados. 3. ed. São Paulo: Prentice Hall, 2008. 
—  GUIMARÃES, Ângelo de Moura; LAGES, Newton Alberto de 
Castilho. Algoritmos e estruturas de dados. Rio de Janeiro: LTC, 
2008.. 
—  SOUZA, Marco Antonio Furlan de et al. Algoritmos e lógica de 
programação. São Paulo: Cengage Learning, 2008. 
—  UCCI, Waldir; SOUSA, Reginaldo Luiz; KOTAVI, Alice Mayumi. 
Lógica de programação: os primeiros passos. 8. ed. São Paulo: 
Érica, 1999.

Continue navegando