![Page 1: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/1.jpg)
ESTRUTURAS DE CONTROLE
ESTRUTURAS DE REPETIÇÃOESTRUTURAS DE REPETIÇÃO
Baseado nos slides de autoria de Rosely Sanches
![Page 2: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/2.jpg)
Estruturas de Controle● ESTRUTURA SEQUENCIAL● ESTRUTURAS CONDICIONAIS
– Estrutura Condicional Simples– Estrutura Condicional Composta– Seleção entre duas ou mais Sequências de
Comandos● ESTRUTURA DE REPETIÇÃO
– Repetição com Teste no Início– Repetição com Teste no Final– Repetição Contada
![Page 3: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/3.jpg)
Estruturas de Controle● ESTRUTURA SEQUENCIAL● ESTRUTURAS CONDICIONAIS
– Estrutura Condicional Simples– Estrutura Condicional Composta– Seleção entre duas ou mais Seqüências de
Comandos● ESTRUTURA DE REPETIÇÃO
– Repetição com Teste no Início– Repetição com Teste no Final– Repetição Contada
![Page 4: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/4.jpg)
Estruturas de Controle● ESTRUTURA SEQUENCIAL● ESTRUTURAS CONDICIONAIS
– Estrutura Condicional Simples– Estrutura Condicional Composta– Seleção entre duas ou mais Seqüências de
Comandos● ESTRUTURA DE REPETIÇÃO
– Repetição com Teste no Início– Repetição com Teste no Final– Repetição Contada
● Permite que uma seqüência de comandos seja executada repetidamente até que uma determinada condição de interrupção seja satisfeita.
![Page 5: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/5.jpg)
enquanto (condição) faça
<comando>
fim-enquanto
Repetição com Repetição com TesteTeste nono InícioInício formas de representação no algoritmo
![Page 6: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/6.jpg)
Repetição com Repetição com TesteTeste nono InícioInício formas de representação no algoritmo
Condição para continuara repetição
enquanto (condição) faça
<comando>
fim-enquanto
![Page 7: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/7.jpg)
7
Repetição com Repetição com TesteTeste nono InícioInício CC
while (expressão lógica) {
<comando>;
}
![Page 8: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/8.jpg)
Repetição com Repetição com TesteTeste nono InícioInício ExemploExemplo
Desenvolver algoritmo para o problema:
Ler a variável SEXO.
Enquanto o valor fornecido não for correto (M,m,F,f) exibir mensagem de erro e solicitar novamente a leitura.
Quando o valor fornecido estiver correto, ler a variável ANO.
Escrever ANO e SEXO
![Page 9: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/9.jpg)
9
Repetição com Repetição com TesteTeste nono InícioInício ExemploExemplo
Var caracter: sexo; inteiro: ano;Inicio Leia (sexo); Enquanto (sexo != ('f', 'F', 'm', 'M') faça Escreva (“ERRO” ); Leia (sexo); Fim-enquanto Leia (ano); Escreva (ano,sexo);Fim
![Page 10: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/10.jpg)
10
Repetição com Repetição com TesteTeste nono InícioInício ExemploExemplo
Esta variável de controledeve ter um valor conhecidoNeste caso ela foi lida antes
A variável de controle deve ter seu valor modificado
dentro do “laço”.Neste caso a variável
foi lida novamente
Var caracter: sexo; inteiro: ano;Inicio Leia (sexo); Enquanto (sexo != ('f', 'F', 'm', 'M') faça Escreva (“ERRO” ); Leia (sexo); Fim-enquanto Leia (ano); Escreva (ano,sexo);Fim
![Page 11: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/11.jpg)
Desenvolver um algoritmo para resolver o seguinte problema:
● Ler um conjunto de valores correspondentes aos pontos que alunos obtiveram em um teste.
● Quando o valor fornecido for um número negativo, isto é um sinal que não existem mais pontos para serem lidos.
● Contar quantos alunos fizeram o teste.● Escrever o total de alunos
Repetição com Repetição com TesteTeste nono InícioInício Contador/AcumuladorContador/Acumulador Exemplo Exemplo
![Page 12: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/12.jpg)
12
Repetição com Repetição com TesteTeste nono InícioInício Contador/AcumuladorContador/Acumulador Exemplo Exemplo
Var inteiro: n, pontos;Inicio n = 0; Leia (pontos); Enquanto (pontos ≥ 0) faça n = n + 1; Leia (pontos); Fim-enquanto Escreva (n);Fim
![Page 13: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/13.jpg)
Desenvolver um algoritmo para resolver o seguinte problema:
● Ler um conjunto de valores correspondentes aos pontos que alunos obtiveram em um teste.
● Quando o valor fornecido for um número negativo, isto é um sinal que não existem mais pontos para serem lidos.
● Contar e escrever quantos alunos fizeram o teste.● Contar e escrever quantos alunos tiveram nota baixa
(PONTOS < 50)● Contar e escrever quantos alunos tiveram nota alta
(50 ≤ PONTOS ≤ 100)
Repetição com Repetição com TesteTeste nono InícioInício Contador/AcumuladorContador/Acumulador Exercício Exercício
![Page 14: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/14.jpg)
Desenvolver um programa para resolver o seguinte problema:
● Ler um conjunto de valores correspondentes aos pontos que alunos obtiveram em um teste.
● Quando o valor fornecido for um número negativo, isto é um sinal que não existem mais pontos para serem lidos.
● Contar e escrever quantos alunos fizeram o teste.● Contar e escrever quantos alunos tiveram nota baixa
(PONTOS < 50)● Contar e escrever quantos alunos tiveram nota alta
(50 ≤ PONTOS ≤ 100)
Repetição com Repetição com TesteTeste nono InícioInício Contador/AcumuladorContador/Acumulador Exemplo Exemplo
São necessários 3 contadores
![Page 15: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/15.jpg)
15
Var inteiro: n, altas, baixas, pontos;Inicio n = 0; altas = 0; baixas = 0; Leia (pontos); Enquanto (pontos ≥ 0) faça Se (pontos ≥ 50) então altas = altas + 1; Senão baixas = baixas + 1; Fim-se n = n+1; Leia (pontos); Fim-enquanto Escreva (n, baixas, altas);Fim
![Page 16: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/16.jpg)
Repetição com Repetição com TesteTeste nono InícioInício ExemploExemplo
Desenvolver programa para resolver o problema:
● Ler N números reais (o valor de N também deve ser lido), sendo impressa a média desses números.
![Page 17: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/17.jpg)
17
Var inteiro: n, i; Real: num, media;Inicio // solicitar a entrada da quantidade de números Leia (n); media = 0; i = 1; Enquanto (i ≤ n) faça // solicitar a entrada do número Leia (num); media = media + num; i = i + 1; Fim-enquanto media = media / n; Escreva (media);Fim
![Page 18: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/18.jpg)
18
Var inteiro: n, i; Real: num, media;Inicio // solicitar a entrada da quantidade de números Leia (n); media = 0; i = 1; Enquanto (i ≤ n) faça // solicitar a entrada do número Leia (num); media = media + num; i = i + 1; Fim-enquanto media = media / n; Escreva (media);Fim
i é um contador que determina a parada
![Page 19: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/19.jpg)
Repita <comando 1> <comando 2> ..... <comando n>Enquanto (condição)
Repetição com Repetição com TesteTeste nono Final Final formas de representação no algoritmo
![Page 20: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/20.jpg)
Repetição com Repetição com TesteTeste nono Final Final formas de representação no algoritmo
Condição de parada
da repetição
Repita <comando 1> <comando 2> ..... <comando n>Enquanto (condição)
![Page 21: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/21.jpg)
Repetição com Repetição com TesteTeste nono Final Final formas de representação no algoritmo
Os comandos
são executados pelo menos
uma vez
Repita <comando 1> <comando 2> ..... <comando n>Enquanto (condição)
![Page 22: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/22.jpg)
22
Repetição com Repetição com TesteTeste nono FinalFinal CC
do{ <seqüência de comandos>}while <expressão lógica>;
![Page 23: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/23.jpg)
Repetição com Repetição com TesteTeste nono FinalFinal ExemploExemplo
Desenvolver algoritmo para o problema:
Calcular e exibir o valor da série.
S=11+
32+
53+
74+. ..+
9950
![Page 24: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/24.jpg)
24
Var real: soma, num, div;Inicio soma = 0; num = 1; div = 1; Repita soma = soma + N/D; num = num + 2; div = div + 1; Enquanto (div <= 50); Escreva (soma);Fim
Inicializa a somatória
Inicializa o numerador
Inicializa o denominador
Calcula os termos da série
Calcula o próximo numerador
Calcula o próximo denominador
![Page 25: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/25.jpg)
Para I de C até F faça
<comando>
Fim-para
Repetição Repetição ContadaContada formas de representação no algoritmo
![Page 26: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/26.jpg)
Repetição Repetição ContadaContada
I - variável de controle
C - valor inicial da variável
F valor final da variável
● OBSERVAÇÕES (teoricamente)
– I, C e F não devem ser modificadas– a variável I fica indefinida ao terminar as
repetições
![Page 27: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/27.jpg)
27
Repetição Contada Repetição Contada CC
for (<variavel de controle> = <valor inicial>; condicao de parada <variavel de controle>; incremento <variavel de controle>){
<comando>;
}
![Page 28: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/28.jpg)
Repetição Repetição ContadaContada ExemploExemplo
Desenvolver algoritmo para o problema:
Dado um conjunto de N números, calcular a média aritmética dos mesmos
![Page 29: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/29.jpg)
29
Var Inteiro: n, soma, x;Inicio Leia (n); soma = 0; Para i de 1 até n faça Leia (x); soma = soma + x; Fim-para escreva (soma / n);Fim
![Page 30: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/30.jpg)
Repetição Repetição ContadaContada ExemploExemplo
Desenvolver algoritmo para o problema:
Ler um número inteiro ≥ 0 e calcular seu fatorial.
![Page 31: ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃOconteudo.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0330-1-15/aula4-repeticao.pdf · 10 Repetição com Teste no Início Exemplo](https://reader030.vdocuments.pub/reader030/viewer/2022040705/5e02f475d9e2ea2f20411274/html5/thumbnails/31.jpg)
Comando de Repetição Comando de Repetição ExemploExemplo
● Exibir a tabuada de qualquer número sendo que este número é fornecido pelo usuário.
● O programa deve permitir que sejam exibidas tabuadas de diversos números até que o usuário não deseje mais continuar.