ALGORITMOS – AULA 1
Profª Amanda Gondim
NOÇÕES DE LÓGICA
O
que é lógica?
A lógica trata da correção do pensamento
Ensina-nos a usar corretamente as leis do pensamento
É a arte de pensar corretamente
A forma mais complexa do pensamento é o
raciocínio
Ordem da razão (nossa razão pode funcionar
desordenadamente) ou ordem no pensamento
2
EXISTE LÓGICA NO DIA-A-DIA?
Exemplos:
a)
A gaveta está fechada.
A agenda está na gaveta.
Preciso primeiro abrir a gaveta, para depois pegar a agenda.
b)
Ana é mais velha do que João
João é mais velho do que Pedro
Portanto, Ana é mais velha do que Pedro.
3
ALGORITMO
•
Exemplo:
•
Receita de bolo, onde você tem uma série
de ingredientes necessários, uma sequência
de diversos passos a serem cumpridos para
que se consiga fazer determinado tipo de
bolo (objetivo bem definido).
•
Mapa para se chegar à UFERSA, que
também possui uma sequência de passos a
serem seguidos e um objetivo bem definido.
4
ALGORITMO
Problema
de uma lâmpada queimada que deve
ser trocada, atividade bem cotidiana.
Pegue uma escada;
Posicione-a embaixo da lâmpada;
Busque uma lâmpada nova;
Suba na escada;
Retire a lâmpada;
Coloque uma lâmpada nova;
Acenda o interruptor.
5
ALGORITMO
O objetivo de trocar a lâmpada queimada pode ser
atingido com tal algoritmo que descreve a sequência de
passos a ser seguida. Porém, e se a lâmpada não estiver
queimada? podemos efetuar um teste antes de trocá-la.
ligue o interruptor
SE a lâmpada não acender, então:
pegue uma escada
posicione-a embaixo da lâmpada
busque uma lâmpada nova
suba na escada
retire a lâmpada
coloque uma lâmpada nova
Ligue o interruptor.
6
ALGORITMO
E se a lâmpada nova não funcionar? O objetivo portanto
não foi atingido. Devemos então trocar a lâmpada
diversas vezes, até que funcione.
ligue o interruptor;
O fluxo sequencial de
SE a lâmpada não acender, então: execução foi alterado de
pegue uma escada;
posicione-a embaixo da lâmpada;
busque uma lâmpada nova;
suba na escada;
retire a lâmpada;
coloque uma lâmpada nova.
ENQUANTO a lâmpada não acender:
retire a lâmpada;
coloque outra lâmpada.
forma que após a ação
“coloque outra lâmpada”
o teste “se a lâmpada não
acender” volte a ser
executado o número de
vezes necessário para se
atingir o objetivo. (fluxo
repetitivo)
7
ALGORITMOS NÃO COMPUTACIONAIS
Exemplo: Fazer um Sanduíche
1.
2.
3.
4.
5.
6.
7.
8.
9.
Pegar o pão
Cortar o pão ao meio
Pegar a maionese
Passar a maionese no pão
Pegar e cortar alface e tomate
Colocar alface e tomate no pão
Pegar o Hambúrguer
Fritar o Hambúrguer
Colocar o Hambúrguer no pão
8
ALGORITMOS NÃO COMPUTACIONAIS
Você
pode estar pensando: “Mas eu realizo
essas atividades de maneira diferente!”
Esse
pensamento é correto, pois às vezes um
problema pode ser resolvido de diversas
maneiras, porém, gerando a mesma resposta,
ou seja, podem existir vários algoritmos para
solucionar o mesmo problema.
9
PORTUGUÊS ESTRUTURADO
(PORTUGOL)
Para
que o algoritmo possa ser executado por
uma máquina é importante que as instruções
sejam corretas e sem ambiguidades.
Portanto,
a forma especial de linguagem que
utilizaremos é bem mais restrita que o
Português e com significados bem definidos
para todos os termos utilizados nas
instruções.
10
PORTUGUÊS ESTRUTURADO
(PORTUGOL)
O
português estruturado é, na verdade, uma
simplificação extrema do Português, limitada a
umas poucas palavras e estruturas que têm um
significado muito bem definido.
11
ALGORITMOS COMPUTACIONAIS
Um
programa é um conjunto de milhares de
instruções que indicam ao computador, passo
a passo, o que ele tem que fazer.
Logo,
um programa nada mais é do que um
algoritmo computacional descrito em uma
linguagem de programação.
12
MÉTODO PARA CONSTRUÇÃO DE
ALGORITMOS
Para
construção de qualquer algoritmo, é
necessário seguir estes passos:
Compreender completamente o problema a ser resolvido,
destacando os pontos mais importantes e os objetos que o
compõem.
Definir os dados de entrada, ou seja, quais dados serão
fornecidos.
13
MÉTODO PARA CONSTRUÇÃO DE
ALGORITMOS
Definir o processamento, ou seja, quais cálculos serão
efetuados. O processamento é responsável pela transformação
dos dados de entrada em dados de saída.
Definir os dados de saída.
Construir o algoritmo.
Testar o algoritmo realizando simulações.
14
TIPOS DE ALGORITMOS
Os
três tipos mais utilizados de algoritmos
são:
Descrição Narrativa
Fluxograma
Pseudocódigo ou Portugol ou Português Estruturado
15
DESCRIÇÃO NARRATIVA
Consiste
em analisar o enunciado do
problema e escrever, utilizando uma
linguagem natural (por exemplo, a língua
portuguesa), os passos a serem seguidos
para sua resolução.
Vantagem:
Não é necessário aprender
nenhum conceito novo, pois é a linguagem
natural.
16
DESCRIÇÃO NARRATIVA
Exemplo: Somar três números
1.
2.
3.
Recebe os três números
Somar os três números
Mostrar o resultado obtido
17
FLUXOGRAMA
Utiliza símbolos gráficos predefinidos para a resolução do
problema.
Algoritmos
18
FLUXOGRAMA
Exemplo: Somar três números
19
PORTUGUÊS ESTRUTURADO
Consiste em analisar o enunciado do
problema e escrever, por meio de regras
predefinidas, os passos a serem seguidos
para sua resolução.
Vantagem: A passagem do algoritmo para
qualquer linguagem de programação é
quase imediata, bastando conhecer as
palavras reservadas dessa linguagem que
serão utilizadas.
20
PORTUGUÊS ESTRUTURADO
A estrutura geral de um algoritmo é:
Algoritmo "<nome do algoritmo>"
var
< declaração de variáveis>
inicio
< lista de comandos>
fimalgoritmo
21
PORTUGUÊS ESTRUTURADO
Exemplo: Somar três números
ALGORITMO Soma
var
A, B, C, D: inteiro
inicio
escreva (“Digite o valor de A: ”)
leia (A)
escreva (“Digite o valor de B: ”)
leia (B)
escreva (“Digite o valor de C: ”)
leia (C)
D <- A + B + C
escreva (“D= ”, D)
fimalgoritmo
22
EXERCÍCIOS
1.
Faça um algoritmo para mostrar o resultado
da multiplicação de dois números (Descrição
Narrativa, Fluxograma e Pseudocódigo):
a)
Descrição Narrativa:
1.
2.
3.
Receber os números que serão multiplicados
Multiplicar os números
Mostrar o resultado obtido na multiplicação
23
EXERCÍCIOS
b)
Fluxograma:
24
EXERCÍCIOS
c) Pseudocódigo
ALGORITMO Multiplicacao
var
M, N1, N2: inteiro
inicio
escreva (“Digite o valor de N1: ”)
leia (N1)
escreva (“Digite o valor de N2: ”)
leia (N2)
M <- N1 * N2
escreva (“M = ”, M)
fimalgoritmo
25
EXERCÍCIOS
2.
Faça um algoritmo para mostrar o resultado da divisão de
dois números (Descrição Narrativa, Fluxograma e
Pseudocódigo)
26
EXERCÍCIOS
3.
Faça um algoritmo em Descrição Narrativa,
Fluxograma e Pseudocódigo para calcular a
média aritmética de um aluno e mostrar a
situação, que pode ser aprovado ou
reprovado.
a)
Descrição Narrativa
1.
2.
3.
4.
Receber as duas notas
Calcular a média aritmética
Mostrar a média aritmética
Se a média for maior ou igual a 7, então a
situação do aluno é aprovado; caso contrário,27a
situação é reprovado.
EXERCÍCIOS
b)
Fluxograma
28
EXERCÍCIOS
c)
Pseudocódigo
ALGORITMO Media
var
M, N1, N2: real
inicio
escreva (“Digite o valor de N1: ”)
leia (N1)
escreva (“Digite o valor de N2: ”)
leia (N2)
M <- (N1 + N2) / 2
escreva (“M = ”, M)
se (M >= 7) entao
escreva(“ O aluno esta Aprovado ")
senao
escreva(“ O aluno esta Reprovado ")
fimse
fimalgoritmo
29
Download

Apostila Algoritmo e Fluxograma