Escolar Documentos
Profissional Documentos
Cultura Documentos
Técnico em Informática
Disciplina: Algoritmos
Estruturas de Repetição
3
Enquanto
V
? comandos
F
4
Repita
Repita
teste no final
comando1;
comando2; ...
até <condição> ; // Repete até que a condição seja verdadeira.
comandos
F
?
V
5
Repita
Repita
comando1;
comando2;
comando3;
. . .
até <condição> ; // Repete até que a condição seja verdadeira
// REPETE ENQUANTO A CONDIÇÃO FOR FALSA!!!
6
Repita
Início
Real: X, Y ← 1,5;
Leia(X);
X ← Y + 0,4;
Repita
Escreva(X+Y);
X ← X - 0,1;
Até X > Y;
Escreva(X, Y);
Fim.
7
Repita
Início
Real: X, Y ← 1,5;
// Leia(X);
X ← Y + 0,4;
Repita
Escreva(X+Y);
X ← X - 0,1;
Até X < Y;
Escreva(X, Y);
Fim.
8
Repita
Início
Real: X, Y ← 1,5;
//Leia(X);
X ← Y + 0,4;
➔ Reescrever com o ENQUANTO e
Repita
fazer o teste de mesa!
Escreva(X+Y);
X ← X - 0,1;
Até X < Y;
Escreva(X, Y);
Fim.
9
Enquanto
Início
Real: X, Y ← 1,5;
//Leia(X);
X ← Y + 0,4;
Enquanto X >= Y faça
Escreva(X+Y);
X ← X - 0,1;
FimEnquanto;
Escreva(X, Y);
Fim.
10
Enquanto X Repita
Dica:
Inverter a condição
Negar a condição
FimPara;
12
Estrutura de Repetição
13
Estrutura de Repetição
14
Estrutura de Repetição
1 2 3 4 5 i <= 5
10 8 6 4 2 i >= 2
15
Estrutura de Repetição
16
Estrutura de Repetição
17
Estrutura de Repetição
Início
//Declaração de variáveis
caractere: resp;
Repita
// faz alguma coisa
...
Escreva (“Quer continuar?”);
Leia(Resp);
até resp <> “sim”;
Fim.
18
Estrutura de Repetição
Início
//Declaração de variáveis
caractere: resp <- “sim”;
Enquanto resp = “sim” faça
// faz alguma coisa
...
Escreva (“Quer continuar?”);
Leia(Resp);
FimEnquanto;
Fim.
19
Estrutura de Repetição
Comparação entre as estruturas de repetição
20
Exercícios
1. Construa um algoritmo que mostre a tabuada de um valor fornecido
pelo usuário.
Variações:
1a. Várias tabuadas fornecidas pelo operador
1b. Todas as tabuadas: de 1 a 10!
21
Exercícios
Início
Início caractere: resp;
Inteiro: X, i; Inteiro: X, I;
Leia(X); Repita
Para I de 1 até 10 faça Leia(X);
Escreva(X*I); Para I de 1 até 10 faça
FimPara; Escreva(X*I);
Fim. FimPara;
Escreva (“Quer continuar?”);
Leia(Resp);
até resp <> “sim”;
Fim. 22
Exercícios
2. faça um algoritmos que mostre os valores inteiros do intervalo
fornecido pelo usuário.
Variações:
2a. Se 1º valor for maior que o 2º?
2b. Generalizar para qualquer situação > ou <
23
Exercícios
2. faça um algoritmos que mostre os valores inteiros do intervalo
fornecido pelo usuário.
Início
Inteiro: i, A, B.
Leia(A,B);
Para i de A até B passo 1 faça
Escreva(i)
FimPara;
Fim. 24
Exercícios
2. faça um algoritmos que mostre os valores inteiros do intervalo
fornecido pelo usuário.
A B i
Início 2 5 2 TELA
Inteiro: i, A, B. 3 2
Leia(A,B); 4 3
Para i de A até B faça 5 4
Escreva(i) 6 5
FimPara;
Fim. 25
Exercícios
2. faça um algoritmos que mostre os valores inteiros do intervalo
fornecido pelo usuário.
A B i
Início 7 5 TELA
Inteiro: i, A, B.
Leia(A,B);
Para i de A até B faça
Escreva(i)
FimPara;
Fim. 26
Exercícios
Início Só funciona para B > A!
Inteiro: i, A, B.
A B i
Leia(A,B);
7 5 TELA
Para i de A até B faça
Escreva(i)
FimPara;
Fim.
27
Exercícios
2. faça um algoritmos que mostre os valores inteiros do intervalo
fornecido pelo usuário.
A B i
Início 7 5 7 TELA
Inteiro: i, A, B. 6 7
Leia(A,B); 5 6
Para i de A até B passo -1 faça 4 5
Escreva(i)
FimPara;
Fim. 28
Exercícios
Início
Inteiro: i, A, B, p <- 1;
A B i
Leia(A,B);
TELA
Se A > B então p <- -1; FimSe;
Para i de A até B passo p faça
Escreva(i)
FimPara;
Fim.
29
Exercícios
3. faça um algoritmo que mostre os 10 primeiros números pares.
30
Exercícios
4. faça um algoritmo que lê o nome e a idade de alguém e mostre o
nome e o grupo etário que pertence.
1. Criança: 1a 7
2. Pré-adole: 8 a 17
3. Adole 18 a 24
4. Adulto 25 a 64
5. Velho + 65
31
Exercícios 2
1. Construa um algoritmo que mostre se um dado número é primo
(primo1.cpp)
Início
Inteiro: x, i, c <- 0;
leia(x);
Para i de 2 até x-1 faça
se x mod i <> 0 então c <- c + 1; fimse;
FimPara;
Se c = 0 então escreva(“é primo”); fimse;
Fim.
33
Exercícios 3
5. Dado um número x inteiro quantas divisões por 2 posso executar
antes que o número fique menor que 1. (div2.cpp)
34
Estrutura de Repetição
1) Crie uma tabela com graus C e F de 0 a 10 de 1 em 1 e de 15 a 100
de 5 em 5. (f=cx1,8+32) (TabCF.cpp)
2) teste de mesa
Início
Inteiro: c <- 0, p <- 1;
Enquanto c <=50 faça
Escreva(c);
c <- c + p;
p <- p + 1;
FimEnquanto;
Fim.
35
Estrutura de Repetição
3) teste de mesa
Início
Inteiro: c <- 0, p <- 1;
Enquanto c <=50 faça
Escreva(c);
c <- c + p;
p <- p + 1;
FimEnquanto;
Fim.
36
Estrutura de Repetição
3) Escreva um algoritmo que calcule e mostre os números primos
menores que 100, apresentar em ordem decrescente. (exerep3.cpp)
37
Estrutura de Repetição
6) Euaq: calcule e mostre uma PA de valor incial A razão B e valor final
menor que X (exerep6.cpp).
38
Início
Real: T1, T2;
Caractere: Nome;
Escreva(“Digite nome e as notas do 1º e 2º trimestre: “);
Leia(Nome, T1, T2);
Se T2 > T1 * 1,5
então Escreva (Nome, “Você ganhou um caneta!”);
Senão Se T2 > T1*1,3
então Escreva (Nome, “Você ganhou uma lápis!”);
Senão Escreva (Nome, “Continue estudando próximo trimestre
tem mais!”); FimSe;
Fim.
39
Codificação de Algoritmos
● Sintaxe de uma linguagem C
○ Traduzir de pseudocódigo para C
● Ferramenta DEV C++
41
Fui claro?