Você está na página 1de 29

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 6

 Ligue o interruptor.
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; forma que após a ação
 posicione-a embaixo da lâmpada;
“coloque outra lâmpada”
o teste “se a lâmpada não
 busque uma lâmpada nova;
acender” volte a ser
 suba na escada;
executado o número de
 retire a lâmpada; vezes necessário para se
 coloque uma lâmpada nova. atingir o objetivo. (fluxo
 ENQUANTO a lâmpada não acender:
repetitivo)
7
 retire a lâmpada;
 coloque outra lâmpada.
ALGORITMOS NÃO COMPUTACIONAIS
Exemplo: Fazer um Sanduíche
1. Pegar o pão
2. Cortar o pão ao meio
3. Pegar a maionese
4. Passar a maionese no pão
5. Pegar e cortar alface e tomate
6. Colocar alface e tomate no pão
7. Pegar o Hambúrguer
8. Fritar o Hambúrguer
9. 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
 Paraconstruçã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. Recebe os três números


2. Somar os três números
3. 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. Receber os números que serão multiplicados
2. Multiplicar os números
3. 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. Receber as duas notas
2. Calcular a média aritmética
3. Mostrar a média aritmética
4. 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 ")
29
fimse
fimalgoritmo