Logica 02
Logica 02
• Algoritmos só se aprendem:
- Construindo algoritmos
- Testando algoritmos
- Através de muitos exercícios
- Organizando as idéias antes de começar
- Entendendo as entradas, os objetivos
e as saídas desejadas
Formas de Representar
um Algoritmo
• Existem diversas formas de
representação de algoritmos, você deve
escolher a que lhe é mais clara. Dentre as
mais conhecidas:
• Descrição Narrativa
• Fluxograma Convencional
• Diagrama de Chapin
• Pseudocódigo (ou Português Estruturado)
Descrição Narrativa
• Os algoritmos são expressos diretamente
em linguagem natural. Muitas vezes dá
oportunidade a más interpretações,
ambigüidades e imprecisões. Exemplos:
Algoritmo Lavar Cabelo
1 -- Molhe o cabelo Algoritmo Fritar Ovo
2 -- Repita duas vezes 1 -- pegar frigideira , ovo , oleo e sal
Coloque xampu no cabelo 2 -- colocar oleo na frigideira
Massageie até fazer espuma 3 -- acender fogo
Enxague 4 -- colocar a frigideira no fogo
5 -- esperar o oleo esquentar
6 -- colocar o ovo
7 -- retirar quando pronto
Fluxograma Convencional
• É uma representação gráfica de algoritmos
onde formas geométricas diferentes
implicam ações (instruções, comandos)
distintas.
Início e final Operações de atribuição
do fluxograma e chamada ou retorno de
subalgoritmo
Entrada de
Dados
Decisão
Saída de
Dados
Fluxograma Convencional
Exemplo
Início
Algoritmo para cálculo
N1, N2 da média de um aluno
Média =
(N1+N2)/2
Média N
“Reprovado”
>=7
S
“Aprovado” Fim
Diagrama de Chapin
Criado por Ned Chapin a partir de trabalhos de
Nassi-Shneiderman, os quais resolveram substituir o
fluxograma tradicional por um diagrama que apresenta
uma visão hierárquica e estruturada da lógica do
programa.
Início
Leia N1, N2
Média = (N1+N2)/2
Média >=7
Sim Não
Escreva Escreva
“Aprovado” “Reprovado”
Fim
Português Estruturado ou
Pseudocódigo
• É rico em detalhes e, por algoritmo: media_aluno
assemelhar-se bastante à
forma em que os programas inicio
variaveis
são escritos. Será a forma float N1, N2, Media;
adotada nesta disciplina. leia (N1 , N2);
Media = ( N1+N2 )/2;
se (Media >= 7)
imprima ("Aprovado“)
senao
imprima (“Em Analise“);
fim
Exercícios
• Utilizando a descrição narrativa, elabore os
seguintes algoritmos:
• Trocar uma lâmpada
• Responder a uma prova de cinco questões
• Utilizando o fluxograma convencional, elabore
os seguintes algoritmos:
• Informar a idade de uma pessoa daqui a 12 anos
• Informe se a temperatura da cidade está quente,
agradável ou fria (quente: acima de 35º; fria:
abaixo de 15º; agradável: intervalo entre quente e
fria)
Variável
• Tanto na informática como na matemática – é a
representação simbólica dos elementos de um
certo conjunto.
A Variável
25
Memóri Valor contido
a na variável
16
Representação das Informações
• A variável é composta de dois elementos básicos:
• DEFINIÇÃO DE VARIÁVEIS:
• Todas as variáveis definidas pelo Usuário devem
ser declaradas no início do programa.
O nome da variável
não pode ter acento,
Exemplos: int x,y; cedilha ou espaços em
branco
• real z, salario;
18
Expressões Lógicas e Aritméticas
• Expressões Aritméticas: Representa um valor numérico.
Exemplo: A * B + C
• Operadores Aritméticos:
Expressões Lógicas e Aritméticas
• Expressões Lógicas: Expressões que são formadas por operadores
lógicos e/ou relacionais, envolvendo variáveis ou constantes.
✔ variável é o identificador
✔ <-é o símbolo de atribuição
✔ expressão é a variável, constante ou expressão cujo resultado será
armazenado na variável.
Exemplos: A <- 16 ;
Operações Primitivas
• Leitura:
▪ Permite a leitura de valores/dados e a atribuição para as variáveis
indicadas.
▪ Indica que os dados são fornecidos por meio externo e são
armazenados na memória do computador.
▪ Dentro da operação de leitura existe uma operação de atribuiçaõ
embutida.
Exemplo:imprima MATRICULA;
Elaboração Estruturada de Algoritmos
• Todo ALGORITMO é composto por:
Cabeçalho: Que começa com a palavra PROG <nome do programa> seguido da
lista de variáveis a serem usadas durante o programa.
• Exemplo:
prog aula
int x;
imprima “Digite um numero: “;
leia x;
imprima “Vc digitou: “, x;
fimprog
25
Exemplo de um Algoritmo
• Exemplo: Escrever um algoritmo para ler
as três notas de um aluno e imprimir a
sua média aritmética.
prog calcula_media
real nota1, nota2, nota3, media;
imprima “Digite a primeira nota: “;
• leia nota1;
imprima “Digite a segunda nota: “;
• leia nota2;
imprima “Digite a terceira nota: “;
leia nota3;
media <- (nota1 + nota2 + nota3) / 3;
imprima “A media do aluno é: “,media;
fimprog 26
Elaboração Estruturada de Algoritmos
• Observações:
▪ Palavras reservadas – são palavras que tem significado
especial previamente definido, não podendo ser usadas
como identificador de variáveis. Ex: escreva, leia, inicio,
fim, etc.
▪ Comentários – texto explicativo entre iniciado com “//”,
para auxiliar no entendimento dos diversos blocos do
programa.
▪ Identação – artifício utilizado para auxiliar no
entendimento da lógica do programa.
27
Estruturas de Controle
• Seleção Simples: SE( <condição>){
Comandos A;
}
PROG CALCULA_MEDIA2
REAL NOTA1, NOTA2, NOTA3, MEDIA;
IMPRIMA “DIGITE A PRIMEIRA NOTA: “;
LEIA NOTA1;
IMPRIMA “DIGITE A SEGUNDA NOTA: “;
•Exemplo: Escrever um algoritmo LEIA NOTA2;
para ler as duas notas de um MEDIA <- (NOTA1 + NOTA2 + NOTA3) /
aluno e imprimir a sua média 3;
aritmética. Se a nota for maior IMPRIMA “A MEDIA DO ALUNO É: “ ,
ou igual a 7 deve ser impressa MEDIA;
também a mensagem de aluno SE( MEDIA >= 7){
aprovado. IMPRIMA “ALUNO APROVADO”;
}
FIMPROG
Estruturas de Controle
• Seleção Composta: SE( <condição>){
Comandos A;
}SENAO{
• Comandos B;
}
PROG CALCULA_MEDIA2
Exemplo1: Escrever um REAL NOTA1, NOTA2, NOTA3, MEDIA;
algoritmo para ler as três notas IMPRIMA “DIGITE A PRIMEIRA NOTA: “;
de um aluno e imprimir a sua LEIA NOTA1;
média aritmética. Se a nota for IMPRIMA “DIGITE A SEGUNDA NOTA: “;
maior ou igual a 7 deve ser LEIA NOTA2;
impresso “Aluno Aprovado” caso MEDIA <- (NOTA1 + NOTA2 + NOTA3) / 3;
contrário “Reprovado”. IMPRIMA “A MEDIA DO ALUNO É: “ ,
MEDIA;
SE( MEDIA >= 7){
IMPRIMA “ALUNO APROVADO”;
} SENAO {
IMPRIMA “ALUNO REPROVADO”;
}
FIMPROG
FIM