AEDI-refinamentos

Propaganda
Algoritmos e Estruturas de Dados I
– Refinamentos Sucessivos
Profa. Mercedes Gonzales
Márquez
Refinamento sucessivos


Um algoritmo é considerado completo se os
seus comandos forem do entendimento do seu
destinatário.
Um comando que não for do entendimento do
usuário terá de ser desdobrado em novos
comandos, que constituirão um refinamento do
comando inicial.
Refinamento sucessivos


Exemplo 1: O algoritmo para escrever os
termos de Fibonacci inferiores a L poderia ser
desdobrado em:
Algoritmo
1. Receba o valor L
2. Processe os dois primeiros termos
3. Processe os termos restantes
Refinamento sucessivos
1. Receba o valor L
Leia (L)
2. Processe os dois primeiros termos
T1<-1
T2<-1
Se T1<L então
Escreva T1,T2
Refinamento sucessivos
3. Processe os termos restantes
Fib<-T1+T2
Se Fib<L então
Escreva Fib
T1<-T2
T2->Fib
Fib->T1+T2
Refinamento sucessivos
Juntando os refinamentos temos o algoritmo completo
Leia L
T1<-1
T2<-1
Se T1<L então
Escreva T1,T2
Fib<-T1+T2
Se Fib<L então
Escreva Fib
T1<-T2
T2->Fib
Fib->T1+T2
Refinamento sucessivos

Exemplo 2: Leia três valores inteiros, determine
e imprima o menor deles.
Algoritmo
1. Leia os números
2. Determine o menor número
3. Escreva o menor número
Refinamento sucessivos
1. Leia os números
Leia A,B,C
2. Determine o menor número
Se A<B e A<C então
Menor<-A
Senão
Determine o menor dentre B e C
Fim se
Refinamento sucessivos
3. Determine o menor dentre B e C
Se B<C então
Menor<-B
Senão
Menor<-C
Fim se
4. Escreva o menor número
Escreva Menor
Refinamento sucessivos
Juntando os refinamentos temos o algoritmo completo
Leia A,B,C
Se A<B e A<C então
Menor<-A
Senão
Se B<C então
Menor<-B
Senão
Menor<-C
Fim se
Fim se
Escreva Menor
Download