Professional Documents
Culture Documents
Fernando Almeida
Laos
Outra forma de alterar o fluxo de um programa
A execuo e um ou um grupo de comandos repetida diversas
vezes, sucessivamente
Cada sequncia de execuo (repetio) do lao denominada
passo
A cada passo, ao menos uma varivel modificada dentro do lao
for-end
O nmero de repeties conhecido desde o incio do lao
while-end
O nmero de repeties no conhecido de antemo e o lao
repetido at que uma condio especfica de parada seja satisfeita
Comando break
Ambos os tipos de lao podem ser finalizados a qualquer momento
Laos for-end
A execuo de um ou um grupo de comandos
repetido um nmero de vezes predeterminado
ndice mudo do
loop
Valor de k no
primeiro passo
for k = f : s : t
.......
.......
.......
end
O incremento em
k aps cada passo
Valor de k no
ltimo passo
k
1
4
7
10
x
1
16
49
100
Atividades for-end
1) a) k = 1:2:3 | b) k = 25:-5:10 | c) k = 3:7
2) Faa um algoritmo que mostre todos os nmeros
inteiros de 1 a 50.
3) Faa um algoritmo que leia um nmero N, some
todos os nmeros inteiros de 1 a N, e mostre o
resultado obtido
4) Escreva um algoritmo que leia um conjunto de 5
nmeros inteiros positivos e determine o maior
deles.
5) Faa um algoritmo que gere a seguinte srie: 10, 20,
30, 40, ..., 990, 1000
Laos while-end
Utilizado quando o nmero de repeties no
conhecido
No possui um campo especificando o nmero de
repeties (antes de inici-lo)
O processo se repete at que uma certa condio seja
satisfeita
end
x
2
4
8
16
>> x=1;
>> while x<=15
x=2*x
end
x=
2
x=
4
x=
8
x=
16
Observaes
A expresso condicional no comando while deve
incluir ao menos uma varivel
As variveis na expresso condicional devem ter sido
inicializadas
Ao menos uma varivel na expresso condicional deve
ser modificada dentro do lao
Em algum momento a expresso deve-se tornar falsa
Altere a expresso do exemplo anterior para x >= 0.5
Loops infinitos so considerados erros comuns
Ctrl+C ou Ctrl+Break (sai do loop)
Atividades while-end
Faa um algoritmo que mostre todos os nmeros
inteiros de 1 a 50.
2. Faa um algoritmo que leia um nmero N, some
todos os nmeros inteiros de 1 a N, e mostre o
resultado obtido
3. Faa um algoritmo que gere a seguinte srie: 10, 20,
30, 40, ..., 990, 1000
1.
end
end
Um grupo de
comandos MATLAB
Lao
aninhado
Lao
Atividades
Escreva uma rotina para encontrar o menor nmero
inteiro mpar divisvel por 3, cuja terceira potncia
maior que 4000.
Utilize apenas um lao no programa
O lao deve iniciar em 1 e parar quando o nmero for
encontrado
Em seguida, o programa deve imprimir uma
mensagem O nmero requerido :
Imprima o nmero
Pg 218 exe. 13