Buscar

bcc701 2018 01 04 estruturas de iteracao

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 129 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 129 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 129 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

BCC701- Programac¸a˜o de Computadores I
04 - Estruturas de Repetic¸a˜o
Universidade Federal de Ouro Preto - UFOP
Departamento de Computac¸a˜o - DECOM
http://www.decom.ufop.br/bcc701
BCC701 - 2018-01
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 1 / 54
Suma´rio
1 Definic¸a˜o
2 Sintaxe ba´sica
Iterac¸a˜o controlada logicamente (while)
Iterac¸a˜o controlada por contador (for)
3 Comparando while e for
4 Exerc´ıcios 01 a 07
5 Lac¸os aninhados
6 Exerc´ıcios 08 a 10
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 2 / 54
Programac¸a˜o Estruturada
A Programac¸a˜o Estruturada e´ uma forma de programac¸a˜o de
computadores que preconiza que todos os programas poss´ıveis podem ser
reduzidos a apenas treˆs estruturas
Sequeˆncia;
Decisa˜o (desvio condicional);
Iterac¸a˜o (lac¸o de repetic¸a˜o);
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 3 / 54
Programac¸a˜o Estruturada
A Programac¸a˜o Estruturada e´ uma forma de programac¸a˜o de
computadores que preconiza que todos os programas poss´ıveis podem ser
reduzidos a apenas treˆs estruturas: sequeˆncia, decisa˜o e iterac¸a˜o.
Sequeˆncia
Os programas constituem-se de
uma sequeˆncia de instruc¸o˜es,
ou comandos, executados um
apo´s o outro, conforme o
fluxograma ao lado.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 4 / 54
Programac¸a˜o Estruturada
A Programac¸a˜o Estruturada e´ uma forma de programac¸a˜o de
computadores que preconiza que todos os programas poss´ıveis podem ser
reduzidos a apenas treˆs estruturas: sequeˆncia, decisa˜o e iterac¸a˜o.
Decisa˜o (desvio condicional)
Sa˜o aplicados quando os
programas precisam executar
algumas instruc¸o˜es
SOMENTE se determinada
condic¸a˜o for verdadeira ou
falsa;
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 4 / 54
Programac¸a˜o Estruturada
A Programac¸a˜o Estruturada e´ uma forma de programac¸a˜o de
computadores que preconiza que todos os programas poss´ıveis podem ser
reduzidos a apenas treˆs estruturas: sequeˆncia, decisa˜o e iterac¸a˜o.
Iterac¸a˜o (lac¸o de repetic¸a˜o)
Sa˜o aplicados quando os
programas precisam executar
algumas instruc¸o˜es
ENQUANTO determinada
condic¸a˜o for verdadeira;
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 4 / 54
Programac¸a˜o Estruturada
A Programac¸a˜o Estruturada e´ uma forma de programac¸a˜o de
computadores que preconiza que todos os programas poss´ıveis podem ser
reduzidos a apenas treˆs estruturas: sequeˆncia, decisa˜o e iterac¸a˜o.
Iterac¸a˜o (repetic¸a˜o)
Enquanto a condic¸a˜o for
verdadeira: execute o
conjunto de instruc¸o˜es 2;
Quando a condic¸a˜o for
falsa, finalize a repetic¸a˜o;
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 4 / 54
Programac¸a˜o Estruturada
A Programac¸a˜o Estruturada e´ uma forma de programac¸a˜o de
computadores que preconiza que todos os programas poss´ıveis podem ser
reduzidos a apenas treˆs estruturas: sequeˆncia, decisa˜o e iterac¸a˜o.
Iterac¸a˜o (repetic¸a˜o)
Enquanto a condic¸a˜o for
verdadeira: execute o
conjunto de instruc¸o˜es 2;
Quando a condic¸a˜o for
falsa, finalize a repetic¸a˜o;
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 4 / 54
Programac¸a˜o Estruturada
Sequeˆncia: Decisa˜o: Iterac¸a˜o:
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 5 / 54
Sintaxe ba´sica de repetic¸a˜o
Em alguns casos e´ necessa´rio realizar a repetic¸a˜o de um certo
conjunto de instruc¸o˜es;
Assim, altera-se o fluxo de execuc¸a˜o do programa, executando as
instruc¸o˜es inu´meras vezes consecutivamente;
O conjunto de instruc¸o˜es e´ sempre o mesmo, mas os dados podem
mudar a cada execuc¸a˜o;
Cada execuc¸a˜o do lac¸o em conjunto com a avaliac¸a˜o da condic¸a˜o e´
denominada uma iterac¸a˜o;
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 6 / 54
Sintaxe ba´sica de repetic¸a˜o
Veremos dois tipos de repetic¸a˜o:
Controlado logicamente: define-se explicitamente a condic¸a˜o atrave´s
de uma expressa˜o lo´gica:
Enquanto a condic¸a˜o permanecer verdadeira, as instruc¸o˜es sera˜o
executadas;
Controlado por contador: a condic¸a˜o e´ definida implicitamente por
um contador:
Existe uma sequeˆncia de contagem predefinida: in´ıcio, passo e fim;
A cada iterac¸a˜o o contador e´ alterado pelo valor do passo;
O lac¸o e´ executado enquanto o contador na˜o atinge ou ultrapasse o
valor final;
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 7 / 54
Sintaxe ba´sica de repetic¸a˜o: Controlado logicamente
while <cond icao>
< i n s t r u c o e s>
end
< condicao >: expressa˜o lo´gica que determina se o lac¸o continua
(%T ) ou e´ encerrado (%F );
< instrucoes >: conjunto de instruc¸o˜es a serem executadas a cada
iterac¸a˜o;
while e end palavras reservadas;
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 8 / 54
Comparando if e while
i f <cond icao> [ then ]
< i n s t r u c o e s>
[ e l s e i f <c o n d i c a o 1>
< i n s t r u c o e s 1>
:
e l s e i f <c o n d i c a o N>
< i n s t r u c o e s N>]
[ e l s e
< i n s t r u c o e s N+1>]
end
whi le <cond icao>
< i n s t r u c o e s >
end
if: execute as < instrucoes > CASO a < condicao > seja
verdadeira (nenhuma ou uma u´nica vez). Em suas variac¸o˜es de
sintaxe, permite escolher entre diferentes conjuntos de instruc¸o˜es;
while: execute as < instrucoes > ENQUANTO a < condicao > for
verdadeira (nenhuma ou va´rias vezes).
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 9 / 54
Exemplo 1
Implemente um programa que leia do teclado um nu´mero inteiro N e
imprima todos os nu´meros inteiros do intervalo 0 ate´ N.
Observac¸o˜es:
A impressa˜o e´ em ordem crescente;
Sera˜o impressos nu´meros >= 0 e <= N;
O comando de imprimir e´ repetido (N + 1) vezes;
Quando a varia´vel assume um valor > N, a repetic¸a˜o e´ encerrada
(condic¸a˜o de parada).
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 10 / 54
Exemplo 1: while
1 N = input("Digite o valor limite: ")
2 num = 0
3 while num <= N
4 printf("%g\t", num)
5 num = num + 1
6 end
7 printf("\nFim do programa.")
Console
Digite o valor limite: ‡
Varia´veis
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 11 / 54
Exemplo 1: while
1 N = input("Digite o valor limite: ")
2 num = 0
3 while num <= N
4 printf("%g\t", num)
5 num = num + 1
6 end
7 printf("\nFim do programa.")
Console
Digite o valor limite: 3
‡
Varia´veis
N float 3.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 11 / 54
Exemplo 1: while
1 N = input("Digite o valor limite: ")
2 num = 0
3 while num <= N
4 printf("%g\t", num)
5 num = num + 1
6 end
7 printf("\nFim do programa.")
Console
Digite o valor limite: 3
‡
Varia´veis
N float 3.
num float 0.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 11 / 54
Exemplo 1: while
1 N = input("Digite o valor limite: ")
2 num = 0
3 while num <= N
4 printf("%g\t", num)
5 num = num + 1
6 end
7 printf("\nFim do programa.")
Console
Digite o valor limite: 3
‡
Varia´veis
N float 3.
num float 0.
0 <= 3 bool %T
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 11 / 54
Exemplo 1: while
1 N = input("Digite o valor limite: ")
2 num = 0
3 while num <= N
4 printf("%g\t", num)
5 num = num + 1
6 end
7 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 ‡
Varia´veis
N float 3.
num float 0.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 11 / 54
Exemplo 1: while
1 N = input("Digite o valor limite: ")
2 num = 0
3 while num <= N
4 printf("%g\t", num)
5 num = num + 1
6 end
7 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 ‡
Varia´veis
N float 3.
num float 1.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 11 / 54
Exemplo 1: while
1 N =input("Digite o valor limite: ")
2 num = 0
3 while num <= N
4 printf("%g\t", num)
5 num = num + 1
6 end
7 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 ‡
Varia´veis
N float 3.
num float 1.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 11 / 54
Exemplo 1: while
1 N = input("Digite o valor limite: ")
2 num = 0
3 while num <= N
4 printf("%g\t", num)
5 num = num + 1
6 end
7 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 ‡
Varia´veis
N float 3.
num float 1.
1 <= 3 bool %T
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 11 / 54
Exemplo 1: while
1 N = input("Digite o valor limite: ")
2 num = 0
3 while num <= N
4 printf("%g\t", num)
5 num = num + 1
6 end
7 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 ‡
Varia´veis
N float 3.
num float 1.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 11 / 54
Exemplo 1: while
1 N = input("Digite o valor limite: ")
2 num = 0
3 while num <= N
4 printf("%g\t", num)
5 num = num + 1
6 end
7 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 ‡
Varia´veis
N float 3.
num float 2.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 11 / 54
Exemplo 1: while
1 N = input("Digite o valor limite: ")
2 num = 0
3 while num <= N
4 printf("%g\t", num)
5 num = num + 1
6 end
7 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 ‡
Varia´veis
N float 3.
num float 2.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 11 / 54
Exemplo 1: while
1 N = input("Digite o valor limite: ")
2 num = 0
3 while num <= N
4 printf("%g\t", num)
5 num = num + 1
6 end
7 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 ‡
Varia´veis
N float 3.
num float 2.
2 <= 3 bool %T
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 11 / 54
Exemplo 1: while
1 N = input("Digite o valor limite: ")
2 num = 0
3 while num <= N
4 printf("%g\t", num)
5 num = num + 1
6 end
7 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 2 ‡
Varia´veis
N float 3.
num float 2.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 11 / 54
Exemplo 1: while
1 N = input("Digite o valor limite: ")
2 num = 0
3 while num <= N
4 printf("%g\t", num)
5 num = num + 1
6 end
7 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 2 ‡
Varia´veis
N float 3.
num float 3.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 11 / 54
Exemplo 1: while
1 N = input("Digite o valor limite: ")
2 num = 0
3 while num <= N
4 printf("%g\t", num)
5 num = num + 1
6 end
7 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 2 ‡
Varia´veis
N float 3.
num float 3.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 11 / 54
Exemplo 1: while
1 N = input("Digite o valor limite: ")
2 num = 0
3 while num <= N
4 printf("%g\t", num)
5 num = num + 1
6 end
7 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 2 ‡
Varia´veis
N float 3.
num float 3.
3 <= 3 bool %T
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 11 / 54
Exemplo 1: while
1 N = input("Digite o valor limite: ")
2 num = 0
3 while num <= N
4 printf("%g\t", num)
5 num = num + 1
6 end
7 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 2 3 ‡
Varia´veis
N float 3.
num float 3.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 11 / 54
Exemplo 1: while
1 N = input("Digite o valor limite: ")
2 num = 0
3 while num <= N
4 printf("%g\t", num)
5 num = num + 1
6 end
7 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 2 3 ‡
Varia´veis
N float 3.
num float 4.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 11 / 54
Exemplo 1: while
1 N = input("Digite o valor limite: ")
2 num = 0
3 while num <= N
4 printf("%g\t", num)
5 num = num + 1
6 end
7 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 2 3 ‡
Varia´veis
N float 3.
num float 4.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 11 / 54
Exemplo 1: while
1 N = input("Digite o valor limite: ")
2 num = 0
3 while num <= N
4 printf("%g\t", num)
5 num = num + 1
6 end
7 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 2 3 ‡
Varia´veis
N float 3.
num float 4.
4 <= 3 bool %F
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 11 / 54
Exemplo 1: while
1 N = input("Digite o valor limite: ")
2 num = 0
3 while num <= N
4 printf("%g\t", num)
5 num = num + 1
6 end
7 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 2 3
Fim do programa.‡
Varia´veis
N float 3.
num float 4.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 11 / 54
Exemplo 1: while
1 N = input("Digite o valor limite: ")
2 num = 0
3 while num <= N
4 printf("%g\t", num)
5 num = num + 1
6 end
7 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 2 3
Fim do programa.‡
Varia´veis
N float 3.
num float 4.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 11 / 54
Sintaxe ba´sica de repetic¸a˜o: Controlado por contador
fo r <v a r i a v e l > = < i n i c i o > : [ p a s s o :]< f im>
< i n s t r u c o e s>
end
< variavel >: nome da varia´vel controladora do for, seus valores
sera˜o definidos e atualizados automaticamente por:
< inicio >: valor inicial, atribu´ıdo a` varia´vel na primeira iterac¸a˜o;
< passo >: valor de incremento, atualiza o valor da varia´vel ao final de
cada iterac¸a˜o. E´ opcional, o valor padra˜o e´ 1;
< fim >: valor final, o lac¸o termina quando o valor da varia´vel se
iguala ou ultrapassa o valor final;
< instrucoes >: conjunto de instruc¸o˜es a serem executadas a cada
iterac¸a˜o;
for e end palavras reservadas;
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 12 / 54
Exemplo 1
Implemente um programa que leia do teclado um nu´mero inteiro N e
imprima todos os nu´meros inteiros do intervalo 0 ate´ N.
Observac¸o˜es:
A impressa˜o e´ em ordem crescente;
Sera˜o impressos nu´meros >= 0 e <= N;
O comando de imprimir e´ repetido (N + 1) vezes;
Quando a varia´vel assume um valor > N, a repetic¸a˜o e´ encerrada
(condic¸a˜o de parada).
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 13 / 54
Exemplo 1: for
1 N = input("Digite o valor limite: ")
2 for num = 0 : 1 : N
3 printf("%g\t", num)
4 end
5 printf("\nFim do programa.")
Console
Digite o valor limite: ‡
Varia´veis
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 14 / 54
Exemplo 1: for
1 N = input("Digite o valor limite: ")
2 for num = 0 : 1 : N
3 printf("%g\t", num)
4 end
5 printf("\nFim do programa.")
Console
Digite o valor limite: 3
‡
Varia´veis
N float 3.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 14 / 54
Exemplo 1: for
1 N = input("Digite o valor limite: ")
2 for num = 0 : 1 : N
3 printf("%g\t", num)
4 end
5 printf("\nFim do programa.")
Console
Digite o valor limite: 3
‡
Varia´veis
N float 3.
num float ?
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 14 / 54
Exemplo 1: for
1 N = input("Digite o valor limite: ")
2 for num = 0 : 1 : N
3 printf("%g\t", num)
4 end
5 printf("\nFim do programa.")
Console
Digite o valor limite: 3
‡
Varia´veis
N float 3.
num float 0.
0 <= 3 bool %T
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 14 / 54
Exemplo 1: for
1 N = input("Digite o valor limite: ")
2 for num = 0 : 1 : N
3 printf("%g\t", num)
4 end
5 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 ‡
Varia´veis
N float 3.
num float 0.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 14 / 54
Exemplo 1: for
1N = input("Digite o valor limite: ")
2 for num = 0 : 1 : N
3 printf("%g\t", num)
4 end
5 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 ‡
Varia´veis
N float 3.
num float 0.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 14 / 54
Exemplo 1: for
1 N = input("Digite o valor limite: ")
2 for num = 0 : 1 : N
3 printf("%g\t", num)
4 end
5 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 ‡
Varia´veis
N float 3.
num float 1.
1 <= 3 bool %T
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 14 / 54
Exemplo 1: for
1 N = input("Digite o valor limite: ")
2 for num = 0 : 1 : N
3 printf("%g\t", num)
4 end
5 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 ‡
Varia´veis
N float 3.
num float 1.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 14 / 54
Exemplo 1: for
1 N = input("Digite o valor limite: ")
2 for num = 0 : 1 : N
3 printf("%g\t", num)
4 end
5 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 ‡
Varia´veis
N float 3.
num float 1.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 14 / 54
Exemplo 1: for
1 N = input("Digite o valor limite: ")
2 for num = 0 : 1 : N
3 printf("%g\t", num)
4 end
5 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 ‡
Varia´veis
N float 3.
num float 2.
2 <= 3 bool %T
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 14 / 54
Exemplo 1: for
1 N = input("Digite o valor limite: ")
2 for num = 0 : 1 : N
3 printf("%g\t", num)
4 end
5 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 2 ‡
Varia´veis
N float 3.
num float 2.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 14 / 54
Exemplo 1: for
1 N = input("Digite o valor limite: ")
2 for num = 0 : 1 : N
3 printf("%g\t", num)
4 end
5 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 2 ‡
Varia´veis
N float 3.
num float 2.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 14 / 54
Exemplo 1: for
1 N = input("Digite o valor limite: ")
2 for num = 0 : 1 : N
3 printf("%g\t", num)
4 end
5 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 2 ‡
Varia´veis
N float 3.
num float 3.
3 <= 3 bool %T
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 14 / 54
Exemplo 1: for
1 N = input("Digite o valor limite: ")
2 for num = 0 : 1 : N
3 printf("%g\t", num)
4 end
5 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 2 3 ‡
Varia´veis
N float 3.
num float 3.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 14 / 54
Exemplo 1: for
1 N = input("Digite o valor limite: ")
2 for num = 0 : 1 : N
3 printf("%g\t", num)
4 end
5 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 2 3 ‡
Varia´veis
N float 3.
num float 3.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 14 / 54
Exemplo 1: for
1 N = input("Digite o valor limite: ")
2 for num = 0 : 1 : N
3 printf("%g\t", num)
4 end
5 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 2 3 ‡
Varia´veis
N float 3.
num float 3.
4 <= 3 bool %F
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 14 / 54
Exemplo 1: for
1 N = input("Digite o valor limite: ")
2 for num = 0 : 1 : N
3 printf("%g\t", num)
4 end
5 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 2 3
Fim do programa.‡
Varia´veis
N float 3.
num float 3.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 14 / 54
Exemplo 1: for
1 N = input("Digite o valor limite: ")
2 for num = 0 : 1 : N
3 printf("%g\t", num)
4 end
5 printf("\nFim do programa.")
Console
Digite o valor limite: 3
0 1 2 3
Fim do programa.‡
Varia´veis
N float 3.
num float 3.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 14 / 54
Comparando while e for
1 N = i n p u t ( ” D i g i t e o v a l o r
l i m i t e : ” )
2 num = 0
3 w h i l e num <= N
4 p r i n t f ( ”%g\ t ” , num)
5 num = num + 1
6 end
7 p r i n t f ( ”\nFim do programa . ” )
1 N = i n p u t ( ” D i g i t e o v a l o r
l i m i t e : ” )
2 f o r num = 0 : 1 : N
3 p r i n t f ( ”%g\ t ” , num)
4 end
5 p r i n t f ( ”\nFim do programa . ” )
while: todo o controle e´ feito pelo programador;
for: o programador define os limites e o Scilab realiza o controle;
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 15 / 54
Comparando while e for
1 N = i n p u t ( ” D i g i t e o v a l o r
l i m i t e : ” )
2 num = 0
3 w h i l e num <= N
4 p r i n t f ( ”%g\ t ” , num)
5 num = num + 1
6 end
7 p r i n t f ( ”\nFim do programa . ” )
1 N = i n p u t ( ” D i g i t e o v a l o r
l i m i t e : ” )
2 f o r num = 0 : 1 : N
3 p r i n t f ( ”%g\ t ” , num)
4 end
5 p r i n t f ( ”\nFim do programa . ” )
while: todo o controle e´ feito pelo programador;
for: o programador define os limites e o Scilab realiza o controle;
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 15 / 54
Comparando while e for
1 N = i n p u t ( ” D i g i t e o v a l o r
l i m i t e : ” )
2 num = 0
3 w h i l e num <= N
4 p r i n t f ( ”%g\ t ” , num)
5 num = num + 1
6 end
7 p r i n t f ( ”\nFim do programa . ” )
1 N = i n p u t ( ” D i g i t e o v a l o r
l i m i t e : ” )
2 f o r num = 0 : 1 : N
3 p r i n t f ( ”%g\ t ” , num)
4 end
5 p r i n t f ( ”\nFim do programa . ” )
while: todo o controle e´ feito pelo programador;
for: o programador define os limites e o Scilab realiza o controle;
Observac¸a˜o:
Todo for pode ser implementado com um while correspondente, mas
a rec´ıproca na˜o e´ verdadeira.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 15 / 54
Comparando while e for
Quando usar while e quando usar for?
while
Quando NA˜O se sabe de antema˜o a quantidade de repetic¸o˜es que
devera˜o ser executadas, pois isto depende da execuc¸a˜o das
< instrucoes >.
for
Quando um intervalo de dados bem definido precisa ser percorrido e
na˜o depende da execuc¸a˜o das < instrucoes >.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 16 / 54
Comparando while e for
Quando usar while e quando usar for?
No caso do Exemplo 1: Implemente um programa que leia do teclado
um nu´mero inteiro N e imprima todos os nu´meros inteiros do intervalo 0
ate´ N.
A quantidade de repetic¸o˜es e´ conhecida de antema˜o e na˜o depende
da execuc¸a˜o das < instrucoes >;
Enta˜o, o mais adequado e´ utilizar o for;
1 N = i n p u t ( ” D i g i t e o v a l o r l i m i t e : ” )
2 f o r num = 0 : 1 : N
3 p r i n t f ( ”%g\ t ” , num)
4 end
5 p r i n t f ( ”\nFim do programa . ” )
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 17 / 54
Comparando while e for
Quando usar while e quando usar for?
Use o for sempre que poss´ıvel, ele sera´ mais mais seguro e eficiente;
Cuidado ao utilizar o while, pois sera´ poss´ıvel que o lac¸o nunca
termine (lac¸o infinito), veja:
1 x = 0
2 w h i l e x <= 10
3 p r i n t f ( ”\nx = %g” , x )
4 // O v a l o r de x nunca s e r a a l t e r a d o .
5 // Logo , o l a c o e i n f i n i t o .
6 end
1 x = 0
2 w h i l e x <= 10
3 p r i n t f ( ”\nx = %g” , x )
4 x = x − 0 . 2
5 // O v a l o r de x e decrementado .
6 // Logo , o l a c o e i n f i n i t o .
7 end
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 18 / 54
Exemplo 2
Implemente um programa que leia do teclado um nu´mero inteiro N e
imprima todos os nu´meros inteiros do intervalo N ate´ 0. Depois disso, o
usua´rio deve responder se deseja executar novamente, caso a resposta seja
’sim’ ele repete a execuc¸a˜o do programa.
Observac¸o˜es:
O programa agora e´ praticamente o mesmo do exemplo 1, mas a
“contagem” e´ regressiva;
Pore´m, agora ele na˜o e´ encerrado enquanto o usua´riona˜o permitir;
Continua sendo um u´nico programa, mas tudo o que era feito antes
devera´ estar em um lac¸o;
Na˜o e´ poss´ıvel saber quando o programa sera´ encerrado, pois isso
depende da resposta do usua´rio. Enta˜o, para isso e´ necessa´rio usar o
while.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 19 / 54
Exemplo 2
Implemente um programa que leia do teclado um nu´mero inteiro N e
imprima todos os nu´meros inteiros do intervalo N ate´ 0. Depois disso, o
usua´rio deve responder se deseja executar novamente, caso a resposta seja
’sim’ ele repete a execuc¸a˜o do programa.
Observac¸o˜es:
Vamos dividir este problema em dois:
Imprimir os nu´meros de N a 0;
Repetir a execuc¸a˜o, fazendo a pergunta ao usua´rio;
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 19 / 54
Exemplo 2
Implemente um programa que leia do teclado um nu´mero inteiro N e
imprima todos os nu´meros inteiros do intervalo N ate´ 0. Depois disso, o
usua´rio deve responder se deseja executar novamente, caso a resposta seja
’sim’ ele repete a execuc¸a˜o do programa.
Resolvendo o primeiro problema:
1 N = i n p u t ( ” D i g i t e o v a l o r l i m i t e : ” )
2 f o r num = N : −1 : 0
3 p r i n t f ( ”%g\ t ” , num)
4 end
1 N = i n p u t ( ” D i g i t e o v a l o r l i m i t e : ” )
2 num = N
3 w h i l e num >= 0
4 p r i n t f ( ”%g\ t ” , num)
5 num = num − 1
6 end
Observe as diferenc¸as para o exemplo 1!
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 19 / 54
Exemplo 2
Implemente um programa que leia do teclado um nu´mero inteiro N e
imprima todos os nu´meros inteiros do intervalo N ate´ 0. Depois disso, o
usua´rio deve responder se deseja executar novamente, caso a resposta seja
’sim’ ele repete a execuc¸a˜o do programa.
Resolvendo o segundo problema:
1 c o n t i n u a r = %t // Deve e x e c u t a r p e l o menos uma vez .
2 w h i l e c o n t i n u a r // c o n t i n u a r assume um v a l o r l o g i c o .
3 // Programa que p r e c i s a e x e c u t a r r e p e t i d a s v e z e s ! //
4 // Pergunta ao u s u a r i o .
5 r e s p = i n p u t ( ” D e s e j a e x e c u t a r novamente ( s im / nao ) ? ” , ” s ” )
6 c o n t i n u a r = r e s p == ” sim ”
7 end
8 p r i n t f ( ”\nFim do programa . ” )
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 19 / 54
Exemplo 2
Implemente um programa que leia do teclado um nu´mero inteiro N e
imprima todos os nu´meros inteiros do intervalo N ate´ 0. Depois disso, o
usua´rio deve responder se deseja executar novamente, caso a resposta seja
’sim’ ele repete a execuc¸a˜o do programa.
Soluc¸a˜o:
1 c o n t i n u a r = %t // Deve e x e c u t a r p e l o menos uma vez .
2 w h i l e c o n t i n u a r // c o n t i n u a r assume um v a l o r l o g i c o .
3 // P r i m e i r o problema .
4 N = i n p u t ( ” D i g i t e o v a l o r l i m i t e : ” )
5 f o r num = N : −1 : 0
6 p r i n t f ( ”%g\ t ” , num)
7 end
8 // P r i m e i r o problema .
9 // Agora e n e c e s s a r i o f a z e r a p e r g u n t a ao u s u a r i o .
10 r e s p = i n p u t ( ” D e s e j a e x e c u t a r novamente ( s im / nao ) ? ” , ” s ” )
11 c o n t i n u a r = r e s p == ” sim ”
12 end
13 p r i n t f ( ”\nFim do programa . ” )
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 19 / 54
Exemplo 3
Implemente um programa que pec¸a um valor N ao usua´rio e calcule e
imprima o valor da se´rie:
S =
N∑
i=1
2i − 1
i
Observac¸o˜es:
S = 11 +
3
2 +
5
3 +
7
4 + ...+
2N−1
N
O somato´rio e´ calculado de forma acumulativa ate´ o N-e´simo termo:
S inicialmente e´ 0 (zero), valor nulo para a soma;
Quando i = 1, S = 1/1, ou seja, S = S + 1/1;
Quando i = 2, S = (1/1) + 3/2, ou seja, S = S + 3/2;
Quando i = 3, S = (1/1 + 3/2) + 5/3, ou seja, S = S + 5/3;
E assim por diante;
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 20 / 54
Exemplo 3
Implemente um programa que pec¸a um valor N ao usua´rio e calcule e
imprima o valor da se´rie:
S =
N∑
i=1
2i − 1
i
Observac¸o˜es:
Devo usar while ou for?
for, pois o intervalo [1, N] e´ bem definido e conhecido antes do in´ıcio
da execuc¸a˜o do lac¸o;
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 20 / 54
Exemplo 3
Implemente um programa que pec¸a um valor N ao usua´rio e calcule e
imprima o valor da se´rie:
S =
N∑
i=1
2i − 1
i
Observac¸o˜es:
Toda se´rie matema´tica apresentara´ um padra˜o para o ca´lculo de cada
termo (expl´ıcito ou impl´ıcito):
Neste caso e´ expl´ıcito e definido por (2 ∗ i − 1)/i ;
Caso seja impl´ıcito voceˆ deve identificar o padra˜o.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 20 / 54
Exemplo 3
S =
N∑
i=1
2i − 1
i
=
1
1
+
3
2
+
5
3
+
7
4
+ ...+
2N − 1
N
1 N = i n p u t ( ” D i g i t e a q u a n t i d a d e de termos : ” )
2 // Antes de i n i c i a r o s o m a t o r i o a c u m u l a t i v o
3 // e n e c e s s a r i o d e f i n i r S e seu v a l o r i n i c i a l .
4 S = 0 // V a l o r n e u t r o para a soma e 0 ( z e r o ) .
5 // A s e g u i r o l a c o para o c a l c u l o a c u m u l a t i v o .
6 f o r i = 1 : N
7 S = S + (2 ∗ i − 1) / i
8 end
9 // D e s p o i s da c o n c l u s a o do l a c o o r e s u l t a d o
10 // e c o n h e c i d o e pode s e r i m p r e s s o na t e l a .
11 p r i n t f ( ”\nO v a l o r da s e r i e e %g. ” , S )
12 p r i n t f ( ”\nFim do programa . ” )
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 21 / 54
Exemplo 4
Em matema´tica, o algoritmo de Euclides e´ um me´todo simples e eficiente
de encontrar o ma´ximo divisor comum entre dois nu´meros inteiros
diferentes de zero.
A ideia principal no Algoritmo de Euclides e´ que o MDC pode ser
calculado iterativamente, usando a seguinte propriedade:
MDC (a, b) = MDC (b, r), onde r e´ o resto da divisa˜o de a por b.
O MDC resultante sera´ obtido quando o resto da divisa˜o for 0 (zero).
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 22 / 54
Exemplo 4
Exemplificando, seja a = 348 e b = 156:
Passo 1: r = 36 (resto da divisa˜o de 348 por 156);
Passo 2: r = 12 (resto da divisa˜o de 156 por 36);
Passo 3: r = 0 (resto da divisa˜o de 36 por 12);
Como r == 0 no passo 3, o valor do MDC e´ 12 (o u´ltimo divisor);
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 23 / 54
Exemplo 4
Exemplificando, seja a = 348 e b = 156:
Passo 1: r = 36 (resto da divisa˜o de 348 por 156);
Passo 2: r = 12 (resto da divisa˜o de 156 por 36);
Passo 3: r = 0 (resto da divisa˜o de 36 por 12);
Como r == 0 no passo 3, o valor do MDC e´ 12 (o u´ltimo divisor);
Soluc¸a˜o:
1 x = i n p u t ( ” D i g i t e um v a l o r : ” )
2 y = i n p u t ( ” D i g i t e o u t r o v a l o r : ” )
3 a = x
4 b = y
5 w h i l e b ˜= 0
6 r = modulo ( a , b )
7 a = b
8 b = r
9 end
10 p r i n t f ( ”MDC(%g, %g) = %g” , x , y , a )
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 23 / 54
Exemplo 5
Implemente um programa que leia do teclado um nu´mero N que determina
a quantidade de nu´meros inteiros maiores do que zero a serem lidos do
teclado e imprima a me´dia dos valores digitados.
Observac¸o˜es:
E´ necessa´rio verificar a restric¸a˜o imposta aos nu´meros;
A me´dia e´ computada a partir do somato´rio de todos os nu´meros;
Somente depois que se conhece o somato´rio e´ que se deve calcular o
valor da me´dia;
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 24 / 54
Exemplo 5
Implemente um programa que leia do teclado um nu´mero N que determina
a quantidade de nu´meros inteiros maiores do que zero a serem lidos do
teclado e imprima a me´dia dos valores digitados.
Observac¸o˜es:
Precisaremos de dois lac¸os:
Um para ler todos os nu´meros e processar o seu somato´rio. Neste caso
teremos um intervalo [1, N] e deveremos utilizar o for;
Outro para validar os nu´meros.Neste caso, na˜o sabemos quantas vezes
o usua´rio digitara´ um nu´mero inva´lido, sendo assim, e´ obrigato´rio o uso
do while.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 24 / 54
Exemplo 5
Implemente um programa que leia do teclado um nu´mero N que determina
a quantidade de nu´meros inteiros maiores do que zero a serem lidos do
teclado e imprima a me´dia dos valores digitados.
Soluc¸a˜o:
1 N = i n p u t ( ” D i g i t e o v a l o r de N: ” )
2 Media = 0 // I n i c i a l m e n t e armazenara o s o m a t o r i o .
3 f o r i = 1 : N
4 // Usando s p r i n t f para uma mensagem mais i n f o r m a t i v a .
5 Num = i n p u t ( s p r i n t f ( ” D i g i t e o v a l o r %g: ” , i ) )
6 // Num tem que s e r i n t e i r o e maior do que z e r o .
7 w h i l e Num ˜= i n t (Num) | Num <= 0 // V a l i d a c a o .
8 p r i n t f ( ”O v a l o r nao e i n t e i r o e maior do que z e r o .\ n” )
9 Num = i n p u t ( s p r i n t f ( ” D i g i t e o v a l o r %g: ” , i ) )
10 end
11 // Agora Num tem um v a l o r v a l i d o .
12 Media = Media + Num
13 end
14 Media = Media / N // A p a r t i r de agora armazena a media .
15 p r i n t f ( ”\nA media dos %g numeros e %. 4 f . ” , N, Media )
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 24 / 54
Exemplo 6
Implemente um programa que leia do teclado um nu´mero N que determina
a quantidade de nu´meros inteiros maiores do que zero a serem lidos do
teclado e imprima o produto´rio dos valores digitados.
Observac¸o˜es:
E´ praticamente igual ao exemplo anterior, mas ao inve´s da me´dia
solicita o produto´rio;
Para a me´dia precisamos do somato´rio, o que diferencia o produto´rio
do somato´rio, ale´m da operac¸a˜o matema´tica envolvida, e´ o valor
inicial;
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 25 / 54
Exemplo 6
Implemente um programa que leia do teclado um nu´mero N que determina
a quantidade de nu´meros inteiros maiores do que zero a serem lidos do
teclado e imprima o produto´rio dos valores digitados.
Soluc¸a˜o:
1 N = i n p u t ( ” D i g i t e o v a l o r de N: ” )
2 P r o d u t o r i o = 1 // V a l o r n e u t r o para o p r o d u t o r i o .
3 f o r i = 1 : N
4 // Usando s p r i n t f para uma mensagem mais i n f o r m a t i v a .
5 Num = i n p u t ( s p r i n t f ( ” D i g i t e o v a l o r %g: ” , i ) )
6 // Num tem que s e r i n t e i r o e maior do que z e r o .
7 w h i l e Num ˜= i n t (Num) | Num <= 0 // V a l i d a c a o .
8 p r i n t f ( ”O v a l o r nao e i n t e i r o e maior do que z e r o .\ n” )
9 Num = i n p u t ( s p r i n t f ( ” D i g i t e o v a l o r %g: ” , i ) )
10 end
11 // Agora Num tem um v a l o r v a l i d o .
12 P r o d u t o r i o = P r o d u t o r i o ∗ Num
13 end
14 p r i n t f ( ”\nO p r o d u t o r i o dos %g numeros e %. 4 f . ” , N, P r o d u t o r i o )
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 25 / 54
Exerc´ıcio 1
Um aluno foi ao supermercado e gastou X reais com as compras da
semana.
Escreva um programa que tenha como entrada o valor X da compra. O
programa deve determinar quantas notas de 50, de 10 e de 1 real sa˜o
suficientes para o pagamento da compra.
Obs: O programa so´ devera´ imprimir a quantidade de notas que forem
maiores do que zero. O valor da compra e´ um nu´mero inteiro e maior do
que 0 (zero).
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 26 / 54
Exerc´ıcio 1: Soluc¸a˜o
1 v a l o r = i n p u t ( ’ V a l o r ( R$ ) : ’ )
2 c i n q u e n t a = 0 ; dez = 0 ; um = 0
3 w h i l e v a l o r > 0
4 i f v a l o r >= 50 then
5 v a l o r = v a l o r − 50
6 c i n q u e n t a = c i n q u e n t a + 1
7 e l s e i f v a l o r >= 10
8 v a l o r = v a l o r − 10
9 dez = dez + 1
10 e l s e
11 v a l o r = v a l o r − 1
12 um = um + 1
13 end
14 end
15 i f c i n q u e n t a > 0 then
16 p r i n t f ( ’ Notas de R$ 5 0 : %g.\ n ’ , c i n q u e n t a )
17 end
18 i f dez > 0 then
19 p r i n t f ( ’ Notas de R$ 1 0 : %g.\ n ’ , dez )
20 end
21 i f um > 0 then
22 p r i n t f ( ’ Notas de R$ 1 : %g. ’ , um)
23 end
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 27 / 54
Exerc´ıcio 2
Um determinado material radioativo perde 1% de sua massa a cada 50
segundos.
Codifique um programa que leia a massa inicial em gramas. A massa
fornecida deve ser maior que 0.5 gramas e o programa repete a entrada
ate´ que uma massa com esta especificac¸a˜o seja fornecida.
O programa calcula e imprime o tempo necessa´rio para que a massa se
torne menor que 0.5 gramas.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 28 / 54
Exerc´ıcio 2: Soluc¸a˜o
1 m a s s a i n i c i a l = 0 // Um v a l o r i n i c i a l que e n t r a no w h i l e .
2 w h i l e m a s s a i n i c i a l < 0 . 5
3 m a s s a i n i c i a l = i n p u t ( ’ D i g i t e a massa ( g ) : ’ )
4 end
5 massa = m a s s a i n i c i a l
6 segundos = 0
7 w h i l e massa >= 0 . 5
8 segundos = segundos + 50
9 massa = massa − massa ∗ 0 . 0 1
10 end
11 p r i n t f ( ’ Massa i n i c i a l = %. 4 f ( g ) .\ n ’ , m a s s a i n i c i a l )
12 p r i n t f ( ’ Massa f i n a l = %. 4 f ( g ) .\ n ’ , massa )
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 29 / 54
Exerc´ıcio 3
Fazer um algoritmo para calcular a raiz quadrada (x) de um nu´mero
positivo (y) usando o roteiro abaixo, baseado no me´todo de aproximac¸o˜es
sucessivas de Newton:
A primeira aproximac¸a˜o para a raiz quadrada de y e´ x1 = y/2;
As sucessivas aproximac¸o˜es sera˜o xn+1 =
x2n+y
2∗xn
O lac¸o dos ca´lculos das aproximac¸o˜es devera´ terminar quando:
|xi − xi−1| < 0.0001
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 30 / 54
Exerc´ıcio 3: Soluc¸a˜o
1 y = i n p u t ( ’ D i g i t e o v a l o r de Y : ’ )
2 x1 = y / 2
3 x2 = ( x1 ˆ 2 + y ) / (2 ∗ x1 )
4 w h i l e abs ( x2 − x1 ) >= 0.0001
5 x1 = x2
6 x2 = ( x1 ˆ 2 + y ) / (2 ∗ x1 )
7 end
8 p r i n t f ( ’ R a i z quadrada de %. 2 f e %. 2 f . ’ , y , x2 )
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 31 / 54
Exerc´ıcio 4
Elabore um programa que solicita ao usua´rio um valor inteiro N qualquer e
calcula N!.
Exemplos de sa´ıdas do programa:
Digite N: 9
9! = 362880
Digite N: -16
Numero invalido!
Digite N: 4
4! = 24
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 32 / 54
Exerc´ıcio 4: Soluc¸a˜o
1 numero = i n p u t ( ’ D i g i t e um numero : ’ )
2 i f numero >= 1 then
3 f a t o r i a l = 1
4 f o r termo = 1 : numero
5 f a t o r i a l = f a t o r i a l ∗ termo
6 end
7 p r i n t f ( ’%g! = %g ’ , numero , f a t o r i a l )
8 e l s e
9 p r i n t f ( ’ Numero i n v a l i d o ! ’ )
10 end
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 33 / 54
Exerc´ıcio 5
Elabore um programa que calcule e imprima uma tabela de senos,
conforme o exemplo abaixo:
x seno(x)
0.0 0.0000
0.2 0.1987
0.4 0.3894
:
:
6.2 -0.0831
Utilize a func¸a˜o sin(x) para calcular o seno de x;
O crite´rio de parada e´ x = 6.2 = 2 ∗ pi.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 34 / 54
Exerc´ıcio 5: Soluc¸a˜o
1 p r i n t f ( ’ x\ t s e n o ( x ) ’ )
2 f o r x = 0 . 0 : 0 . 2 : 6 . 2
3 p r i n t f ( ’%. 1 f \t% . 4 f ’ , x , s i n ( x ) )
4 end
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 35 / 54
Exerc´ıcio 6
Elabore um programa que exiba para o usua´rio se um nu´mero e´ primo ou
na˜o.
Exemplo de sa´ıda do programa:
Digite o nu´mero: 4
Na˜o e´ primo!
Digite o nu´mero: 13
E´ primo!
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 36 / 54
Exerc´ıcio 6: Soluc¸a˜o
1 n = i n p u t ( ’ D i g i t e o numero : ’ )
2 epr imo = %t
3 f o r f = 2 : n / 2 :
4 i f modulo ( n , f ) == 0 then
5 epr imo = %f
6 end
7 end
8 i f epr imo then
9 p r i n t f ( ’E pr imo ! ’ )
10 e l s e
11 p r i n t f ( ’ Nao e pr imo ! ’ )
12 end
DECOM 04 - Estruturas de Repetic¸a˜oBCC701 - 2018-01 37 / 54
Exerc´ıcio 7
Elabore um programa que exiba na tela a tabuada do 1 ao 9.
Exemplo de sa´ıda do programa:
1 x 1 = 1
1 x 2 = 2
:
1 x 9 = 9
2 x 1 = 2
2 x 2 = 4
2 x 3 = 6
2 x 4 = 8
:
9 x 9 = 81
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 38 / 54
Exerc´ıcio 7: Soluc¸a˜o
1 f o r f 1 = 1 : 9
2 f o r f 2 = 1 : 9
3 produto = f 1 ∗ f 2
4 p r i n t f ( ’%g x %g = %g\n ’ , f1 , f2 , p roduto )
5 end
6 end
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 39 / 54
Lac¸os Aninhados
Um lac¸o inserido dentro de outro lac¸o:
1 A execuc¸a˜o dos lac¸os comec¸a no lac¸o externo;
2 Cada iterac¸a˜o do lac¸o externo causa uma execuc¸a˜o do lac¸o interno;
3 Assim, as [instrucoes 1] e [instrucoes 3] executam n vezes, ja´
as <instrucoes 2> executam n ∗m vezes;
1 f o r i = 1 : n
2 [ i n s t r u c o e s 1 ]
3 f o r j = 1 : m
4 < i n s t r u c o e s 2>
5 end
6 [ i n s t r u c o e s 3 ]
7 end
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 40 / 54
Lac¸os Aninhados
Vamos retornar ao programa que exibe na tela a tabuada do 1 ao 9.
Exemplo de sa´ıda do programa:
1 x 1 = 1
1 x 2 = 2
:
1 x 9 = 9
2 x 1 = 2
2 x 2 = 4
2 x 3 = 6
2 x 4 = 8
:
9 x 9 = 81
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 41 / 54
Lac¸os Aninhados
1 f o r f 1 = 1 : 9
2 f o r f 2 = 1 : 9
3 produto = f 1 ∗ f 2
4 p r i n t f ( ’%g x %g = %g\n ’ , f1 , f2 , p roduto )
5 end
6 end
Console
‡
Varia´veis
f1 float 1.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 42 / 54
Lac¸os Aninhados
1 f o r f 1 = 1 : 9
2 f o r f 2 = 1 : 9
3 produto = f 1 ∗ f 2
4 p r i n t f ( ’%g x %g = %g\n ’ , f1 , f2 , p roduto )
5 end
6 end
Console
‡
Varia´veis
f1 float 1.
f2 float 1.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 42 / 54
Lac¸os Aninhados
1 f o r f 1 = 1 : 9
2 f o r f 2 = 1 : 9
3 produto = f 1 ∗ f 2
4 p r i n t f ( ’%g x %g = %g\n ’ , f1 , f2 , p roduto )
5 end
6 end
Console
‡
Varia´veis
f1 float 1.
f2 float 1.
produto float 1.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 42 / 54
Lac¸os Aninhados
1 f o r f 1 = 1 : 9
2 f o r f 2 = 1 : 9
3 produto = f 1 ∗ f 2
4 p r i n t f ( ’%g x %g = %g\n ’ , f1 , f2 , p roduto )
5 end
6 end
Console
1 x 1 = 1
‡
Varia´veis
f1 float 1.
f2 float 1.
produto float 1.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 42 / 54
Lac¸os Aninhados
1 f o r f 1 = 1 : 9
2 f o r f 2 = 1 : 9
3 produto = f 1 ∗ f 2
4 p r i n t f ( ’%g x %g = %g\n ’ , f1 , f2 , p roduto )
5 end
6 end
Console
1 x 1 = 1
‡
Varia´veis
f1 float 1.
f2 float 1.
produto float 1.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 42 / 54
Lac¸os Aninhados
1 f o r f 1 = 1 : 9
2 f o r f 2 = 1 : 9
3 produto = f 1 ∗ f 2
4 p r i n t f ( ’%g x %g = %g\n ’ , f1 , f2 , p roduto )
5 end
6 end
Console
1 x 1 = 1
‡
Varia´veis
f1 float 1.
f2 float 2.
produto float 1.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 42 / 54
Lac¸os Aninhados
1 f o r f 1 = 1 : 9
2 f o r f 2 = 1 : 9
3 produto = f 1 ∗ f 2
4 p r i n t f ( ’%g x %g = %g\n ’ , f1 , f2 , p roduto )
5 end
6 end
Console
1 x 1 = 1
‡
Varia´veis
f1 float 1.
f2 float 2.
produto float 2.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 42 / 54
Lac¸os Aninhados
1 f o r f 1 = 1 : 9
2 f o r f 2 = 1 : 9
3 produto = f 1 ∗ f 2
4 p r i n t f ( ’%g x %g = %g\n ’ , f1 , f2 , p roduto )
5 end
6 end
Console
1 x 1 = 1
1 x 2 = 2
‡
Varia´veis
f1 float 1.
f2 float 2.
produto float 2.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 42 / 54
Lac¸os Aninhados
1 f o r f 1 = 1 : 9
2 f o r f 2 = 1 : 9
3 produto = f 1 ∗ f 2
4 p r i n t f ( ’%g x %g = %g\n ’ , f1 , f2 , p roduto )
5 end
6 end
Console
1 x 1 = 1
1 x 2 = 2
‡
Varia´veis
f1 float 1.
f2 float 2.
produto float 2.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 42 / 54
Lac¸os Aninhados
1 f o r f 1 = 1 : 9
2 f o r f 2 = 1 : 9
3 produto = f 1 ∗ f 2
4 p r i n t f ( ’%g x %g = %g\n ’ , f1 , f2 , p roduto )
5 end
6 end
Console
1 x 8 = 8
1 x 9 = 9
‡
Varia´veis
f1 float 1.
f2 float 9.
produto float 9.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 42 / 54
Lac¸os Aninhados
1 f o r f 1 = 1 : 9
2 f o r f 2 = 1 : 9
3 produto = f 1 ∗ f 2
4 p r i n t f ( ’%g x %g = %g\n ’ , f1 , f2 , p roduto )
5 end
6 end
Console
1 x 8 = 8
1 x 9 = 9
‡
Varia´veis
f1 float 1.
f2 float 9.
produto float 9.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 42 / 54
Lac¸os Aninhados
1 f o r f 1 = 1 : 9
2 f o r f 2 = 1 : 9
3 produto = f 1 ∗ f 2
4 p r i n t f ( ’%g x %g = %g\n ’ , f1 , f2 , p roduto )
5 end
6 end
Console
1 x 8 = 8
1 x 9 = 9
‡
Varia´veis
f1 float 2.
f2 float 9.
produto float 9.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 42 / 54
Lac¸os Aninhados
1 f o r f 1 = 1 : 9
2 f o r f 2 = 1 : 9
3 produto = f 1 ∗ f 2
4 p r i n t f ( ’%g x %g = %g\n ’ , f1 , f2 , p roduto )
5 end
6 end
Console
1 x 8 = 8
1 x 9 = 9
‡
Varia´veis
f1 float 2.
f2 float 1.
produto float 9.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 42 / 54
Lac¸os Aninhados
1 f o r f 1 = 1 : 9
2 f o r f 2 = 1 : 9
3 produto = f 1 ∗ f 2
4 p r i n t f ( ’%g x %g = %g\n ’ , f1 , f2 , p roduto )
5 end
6 end
Console
1 x 8 = 8
1 x 9 = 9
‡
Varia´veis
f1 float 2.
f2 float 1.
produto float 2.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 42 / 54
Lac¸os Aninhados
1 f o r f 1 = 1 : 9
2 f o r f 2 = 1 : 9
3 produto = f 1 ∗ f 2
4 p r i n t f ( ’%g x %g = %g\n ’ , f1 , f2 , p roduto )
5 end
6 end
Console
1 x 9 = 9
2 x 1 = 2
‡
Varia´veis
f1 float 2.
f2 float 1.
produto float 2.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 42 / 54
Lac¸os Aninhados
1 f o r f 1 = 1 : 9
2 f o r f 2 = 1 : 9
3 produto = f 1 ∗ f 2
4 p r i n t f ( ’%g x %g = %g\n ’ , f1 , f2 , p roduto )
5 end
6 end
Console
1 x 9 = 9
2 x 1 = 2
‡
Varia´veis
f1 float 2.
f2 float 1.
produto float 2.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 42 / 54
Lac¸os Aninhados
1 f o r f 1 = 1 : 9
2 f o r f 2 = 1 : 9
3 produto = f 1 ∗ f 2
4 p r i n t f ( ’%g x %g = %g\n ’ , f1 , f2 , p roduto )
5 end
6 end
Console
2 x 8 = 16
2 x 9 = 18
‡
Varia´veis
f1 float 2.
f2 float 9.
produto float 18.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 42 / 54
Lac¸os Aninhados
1 f o r f 1 = 1 : 9
2 f o r f 2 = 1 : 9
3 produto = f 1 ∗ f 2
4 p r i n t f ( ’%g x %g = %g\n ’ , f1 , f2 , p roduto )
5 end
6 end
Console
2 x 8 = 16
2 x 9 = 18
‡
Varia´veis
f1 float 2.
f2 float 9.
produto float 18.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 42 / 54
Lac¸os Aninhados
1 f o r f 1 = 1 : 9
2 f o r f 2 = 1 : 9
3 produto = f 1 ∗ f 2
4 p r i n t f ( ’%g x %g = %g\n ’ , f1 , f2 , p roduto )
5 end
6 end
Console
2 x 8 = 16
2 x 9 = 18
‡
Varia´veis
f1 float 3.
f2 float 9.
produto float 18.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 42 / 54
Lac¸os Aninhados
1 f o r f 1 = 1 : 9
2 f o r f 2 = 1 : 9
3 produto = f 1 ∗ f 2
4 p r i n t f ( ’%g x %g = %g\n ’ , f1 , f2 , p roduto )
5 end
6 end
Console
9 x 8 = 72
9 x 9 = 81
‡
Varia´veis
f1 float 9.
f2 float 9.
produto float 81.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 42 / 54
Exemplo 7
Implemente um programa que leia do teclado um nu´mero N que determina
a quantidade de linhas a serem impressas na tela, contendo uma string
com N asteriscos. Veja um exemplo para N = 5:
*****
*****
*****
*****
*****
Observac¸o˜es:
Para resolver este problema e´ necessa´rio usar lac¸os aninhados;
Sa˜o va´riaslinhas a serem impressas;
Para cada linha sa˜o va´rios “*” a serem impressos;
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 43 / 54
Exemplo 7
Implemente um programa que leia do teclado um nu´mero N que determina
a quantidade de linhas a serem impressas na tela, contendo uma string
com N asteriscos. Veja um exemplo para N = 5:
*****
*****
*****
*****
*****
Soluc¸a˜o:
1 N = i n p u t ( ” D i g i t e a q u a n t i d a d e de l i n h a s : ” )
2 f o r l i n = 1 : N
3 f o r c o l = 1 : N
4 p r i n t f ( ”∗” )
5 end
6 p r i n t f ( ”\n” )
7 end
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 43 / 54
Exemplo 8
Implemente um programa que leia do teclado um nu´mero N que determina
a quantidade de linhas a serem impressas na tela, contendo uma string
com N asteriscos conforme o exemplo para N = 5:
*
**
***
****
*****
Observac¸o˜es:
Problema muito parecido com o anterior;
Mas o padra˜o das linhas e´ outro;
Para cada linha uma determinada quantidade de “*”;
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 44 / 54
Exemplo 8
Implemente um programa que leia do teclado um nu´mero N que determina
a quantidade de linhas a serem impressas na tela, contendo uma string
com N asteriscos conforme o exemplo para N = 5:
*
**
***
****
*****
Soluc¸a˜o:
1 N = i n p u t ( ” D i g i t e a q u a n t i d a d e de l i n h a s : ” )
2 f o r l i n = 1 : N
3 f o r c o l = 1 : l i n
4 p r i n t f ( ”∗” )
5 end
6 p r i n t f ( ”\n” )
7 end
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 44 / 54
Exemplo 9
Implemente um programa que imprima a tabuada de multiplicac¸a˜o:
0 0 0 0 0 0 0 0 0
0 1 2 3 4 5 7 8 9
0 2 4 6 8 10 14 16 18
0 3 6 9 12 15 21 24 27
0 4 8 12 16 20 28 32 36
0 5 10 15 20 25 35 40 45
0 6 12 18 24 30 42 48 54
0 7 14 21 28 35 49 56 63
0 8 16 24 32 40 56 64 72
0 9 18 27 36 45 63 72 81
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 45 / 54
Exemplo 9
Implemente um programa que imprima a tabuada de multiplicac¸a˜o:
0 0 ... 0
0 1 ... 9
: : ... :
: : ... :
0 9 ... 81
Soluc¸a˜o:
1 f o r l i n = 0 : 9
2 f o r c o l = 0 : 9
3 p r i n t f ( ”%3. 0 f ” , l i n ∗ c o l )
4 end
5 p r i n t f ( ”\n” )
6 end
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 46 / 54
Exerc´ıcio 8
Implemente um programa que leia do teclado um nu´mero N que determina
a quantidade de linhas a serem impressas na tela, contendo uma string
com N caracteres conforme o exemplo para N = 5:
+-+-+
-+-+-
+-+-+
-+-+-
+-+-+
Observac¸o˜es:
Dois programas apresentados anteriormente servem de refereˆncia;
Um imprime um padra˜o de impressa˜o semelhante, mas composto
apenas de “*”;
Outro permite classificar um nu´mero como par ou impar, que pode
ser u´til para determinar quando imprimir “+” ou “-”;
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 47 / 54
Exerc´ıcio 8: Soluc¸a˜o 1
Uma soluc¸a˜o mais trivial:
1 N = i n p u t ( ” D i g i t e a q u a n t i d a d e de l i n h a s : ” )
2 f o r l i n = 1 : N
3 f o r c o l = 1 : N
4 i f modulo ( l i n , 2) == 0 then
5 i f modulo ( c o l , 2 ) == 0 then
6 p r i n t f ( ”+” )
7 e l s e
8 p r i n t f ( ”−” )
9 end
10 e l s e
11 i f modulo ( c o l , 2 ) == 0 then
12 p r i n t f ( ”−” )
13 e l s e
14 p r i n t f ( ”+” )
15 end
16 end
17 end
18 p r i n t f ( ”\n” )
19 end
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 48 / 54
Exerc´ıcio 8: Soluc¸a˜o 2
Uma soluc¸a˜o mais rebuscada, apo´s analisar o padra˜o matema´tico com
mais atenc¸a˜o:
1 N = i n p u t ( ” D i g i t e a q u a n t i d a d e de l i n h a s : ” )
2 f o r l i n = 1 : N
3 f o r c o l = 1 : N
4 i f modulo ( l i n+c o l , 2) == 0 then
5 p r i n t f ( ”+” )
6 e l s e
7 p r i n t f ( ”−” )
8 end
9 end
10 p r i n t f ( ”\n” )
11 end
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 49 / 54
Exerc´ıcio 9
Implemente um programa para tabular a func¸a˜o:
f (x , y) =
x4 + 3xy + y 3
2xy + 3x + 4y + 2
para x = [ 2, 4, 6, 8 ] e y = [1, 3, 5, 7, 9].
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 50 / 54
Exerc´ıcio 9: Soluc¸a˜o
1 f o r x = 2 : 2 : 8
2 p r i n t f ( ”\n” )
3 f o r y = 1 : 2 : 9
4 f = ( x ˆ4 + 3∗x∗y + y ˆ3) / (2∗ x∗y + 3∗x + 4∗y + 2)
5 p r i n t f ( ”%8. 2 f ” , f )
6 end
7 end
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 51 / 54
Exerc´ıcio 10
Implemente um programa que receba o valor de N e em seguida N
sequeˆncias de valores nume´ricos na˜o nulos (numero ∼= 0). Cada
sequeˆncia e´ encerrada pela leitura de um valor nulo. Para cada sequeˆncia
de nu´meros lidos, o programa deve imprimir o valor do somato´rio dos
nu´meros cujo arredondamento para inteiro resulte em um valor par.
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 52 / 54
Exerc´ıcio 10: Soluc¸a˜o
1 N = i n p u t ( ” D i g i t e a q u a n t i d a d e de s e q u e n c i a s de numeros : ” )
2 f o r i = 1 : N
3 p r i n t f ( ”\n\ n S e q u e n c i a %g:\ n\n” , i )
4 soma = 0 // Para cada s e q u e n c i a de numeros , uma soma .
5 num = i n p u t ( ” D i g i t e um numero : ” ) // P r i m e i r o numero
6 w h i l e num ˜= 0 // Lendo os numeros da s e q u e n c i a .
7 num = round (num) // Arredondando para um i n t e i r o .
8 i f modulo (num , 2) == 0 then
9 soma = soma + num // Somator io a c u m u l a t i v o ( apenas
p a r e s ) .
10 end
11 num = i n p u t ( ” D i g i t e um numero : ” ) // Proximo numero .
12 end
13 // S e q u e n c i a d e f i n i d a , o u s u a r i o acaba de d i g i t a r 0 ( z e r o ) .
14 // I m p r i m i r o r e s u l t a d o do s o m a t o r i o da s e q u e n c i a a t u a l ,
15 // a n t e s de i n i c i a r a prox ima s e q u e n c i a .
16 p r i n t f ( ”\nO s o m a t o r i o dos numeros p a r e s e %f .\ n” )
17 end
18 p r i n t f ( ”\nFim do programa . ” )
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 53 / 54
DU´VIDAS
DECOM 04 - Estruturas de Repetic¸a˜o BCC701 - 2018-01 54 / 54
	Definição
	Sintaxe básica
	Iteração controlada logicamente (while)
	Iteração controlada por contador (for)
	Comparando while e for
	Exercícios 01 a 07
	Laços aninhados
	Exercícios 08 a 10

Continue navegando