Algoritmo

Propaganda
2013
UFU / FACOM / ICC / Prof. Autran Macêdo
UFU/FACOM/Prof.Autran Macêdo
Algoritmo
Introdução
Fluxograma
Portugol
Considerações Finais
Referências
UFU/FACOM/Prof.Autran Macêdo
•
•
•
•
•
2013
Sumário
2
15
Introdução
1.
2.
3.
Obtenha um número X
Escreva os X termos da sequência de Fibonacci
Fim
UFU/FACOM/Prof.Autran Macêdo
• É uma sequência finita de instruções que resolve um problema.
• Exemplo:
2013
• O que é um algoritmo?
3
15
• Algoritmo MDC, 400 A.C.
• Muhammad ibn Musa al-Khwarizmi
• Matemático, século IX
• Solução sistemática de equações lineares e quadráticas
UFU/FACOM/Prof.Autran Macêdo
• Euclides
2013 - Introdução
História
4
15
Escolha uma linguagem para descrever o algoritmo.
Entenda o problema.
Escreva o algoritmo.
O algoritmo está correto?
sim, vá para o passo 7
não, encontre o erro; corrija o erro; vá para 4
O algoritmo pode ficar melhor?
sim, compensa o investimento?
sim, crie uma nova versão do algoritmo; vá para 4
não, vá para 12
não, vá para 12
fim
Use
Papel
e
Lápis
UFU/FACOM/Prof.Autran Macêdo
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
2013 - Introdução
Algoritmo do Algoritmo
5
15
UFU/FACOM/Prof.Autran Macêdo
• Depende do executor do algoritmo.
2013 - Introdução
Como escrever um algoritmo?
6
15
1.
2.
3.
4.
Leia os dois números no canto superior direito do portal
Calcule o MDC dos números
Digite no painel do portal o MDC
Fim
UFU/FACOM/Prof.Autran Macêdo
• Considerando que o ser saiba o que é MDC, “o segredo para
abrir o portal é”:
2013 - Introdução
Algoritmo para Ser Inteligente
7
15
• Então, “o segredo para abrir o portal é”:
1. leia m, n
2. se n > 0
3.
x ← n
4.
n ← m % n
5.
m ← x
6.
vá para 2
7. fim_se
8. imprima m
9. fim
melhor
leia m, n
enquanto n > 0
x ← n;
n ← m % n;
m ← x;
fim_enquanto
imprima m
fim
UFU/FACOM/Prof.Autran Macêdo
• Considerando que o computador atual, essencialmente, é
capaz de realizar as operações de um computador de von
Neumann.
2013 - Introdução
Algoritmo para Computador
8
15
• Duas muito conhecidas:
• Fluxograma
• SL (Structured Language – Portugol)
UFU/FACOM/Prof.Autran Macêdo
• Há várias linguagens para descrição de algoritmos.
2013 - Introdução
Linguagens para Algoritmos
9
15
Fluxograma
Ação
• Um fluxograma é um grafo
dirigido.
• Siga as setas a partir do
nó Início.
• Há apenas um nó Início.
Observe
UFU/FACOM/Prof.Autran Macêdo
2013
Decisão
• Pode haver vários nós Fim.
• O algoritmo termina quando
se chega a um nó Fim.
10
15
Fluxograma para o MDC
Início
2013 - Fluxograma
leia m, n
se n > 0
x ← n
n ← m % n
m ← x
vá para 2
fim_se
imprima m
fim
Leia
M, N
sim
N>0
Imprima M
UFU/FACOM/Prof.Autran Macêdo
1.
2.
3.
4.
5.
6.
7.
8.
9.
Fim
11
15
não
X=N
N = M%N
M=X
Comandos ==
Vazio ou
Comando Comandos
Portugol
escreva
2013
• leia
Saída
• Atribuição
• var ← valor
• op == + - * % /
var ← var
var ← var op var
• Desvio
• se condição então comandos senão comandos fim_se
• Laço
• enquanto condição comandos fim_enquanto
UFU/FACOM/Prof.Autran Macêdo
• Entrada
Comando ==
Entrada ou
Saída ou
Atribuição ou
Desvio ou
Laço
12
15
UFU/FACOM/Prof.Autran Macêdo
leia m, n
enquanto n > 0
x ← n
n ← m % n
m ← x
fim_enquanto
imprima m
fim
2013 - Portugol
Portugol para o MDC
13
15
Considerações Finais
• Entenda o problema.
• Escreva um algoritmo (lápis e papel).
• Implemente o algoritmo SE SOMENTE SE o algoritmo estiver
correto.
UFU/FACOM/Prof.Autran Macêdo
• Seja um bom programador.
2013
• O algoritmo é a alma do programa.
14
15
Referências
UFU/FACOM/Prof.Autran Macêdo
2013
• Qualquer livro da bibliografia
15
15
Download