Você está na página 1de 3

Estruturas de Repetio

As estruturas de repetio (ou laos) permitem ao programador especificar que uma seqncia de instrues deve ser repetida. Em Pascal estudaremos trs tipos de laos: para (for), enquanto (while) e repita (repeat). Dependendo do problema que desejamos solucionar, podemos escolher a estrutura de repetio mais adequada.

Exemplo 1 1 verso: Um programa que imprima na tela 10 vezes a mensagem: Oi mundo !.


program ImprimeFrase10vezes; begin writeln('Oi mundo!'); writeln('Oi mundo!'); writeln('Oi mundo!'); writeln('Oi mundo!'); writeln('Oi mundo!'); writeln('Oi mundo!'); writeln('Oi mundo!'); writeln('Oi mundo!'); writeln('Oi mundo!'); writeln('Oi mundo!'); end. Muito ruim! Se aumentarmos a quantidade para 100 vezes, fica invivel escrever dessa forma. Estrutura de repetio para (for) Esta estrutura mais utilizada quando sabemos previamente quantas vezes o bloco de instrues deve ser repetido. Este tipo de lao chamado de lao contado, pois se utiliza de uma varivel que chamamos de contador que serve para controlar o nmero de repeties. O contador comea com um valor inicial. A cada passo o contador incrementado (ou decrementado) em uma unidade at que atinja o valor final. O contador tem que ser uma varivel do tipo inteiro.

Estrutura geral do lao for em Pascal: Incremento: for contador := Valor Inicial to Valor Final do begin Comandos; end;

Decremento:

for contador := Valor Inicial downto Valor Final do begin Comandos; end; Valor inicial o primeiro valor que a varivel recebe. Valor final indica o fim da repetio.

Exemplo 1 2 verso: Um programa que imprima na tela 10 vezes a mensagem: Oi mundo !. program ImprimeFrase10vezes; var contador : integer; begin for contador := 1 to 10 do begin writeln('Oi mundo!'); end; readln; end. E se aumentarmos a quantidade para 100 vezes, como fica? program ImprimeFrase100vezes; var contador : integer; begin for contador := 1 to 100 do begin writeln('Oi mundo!'); end; readln; end. Exemplo 2: Um programa que imprima na tela 100 vezes a mensagem: Oi mundo !, numerando as linhas. program ImprimeFrase100vezes; var contador : integer; begin for contador := 1 to 100 do begin writeln(contador, ' - Oi mundo!'); end; readln; end. Exemplo 3: Um programa que imprima os nmeros de 100 a 1. program ImprimeNumeros100a1; var contador : integer; begin for contador := 100 downto 1 do begin writeln(contador); end; readln; end.

Exerccios:

1. Escreva um programa que leia 10 nmeros inteiros e imprima uma mensagem informando 2.
a cada nmero lido se este par ou mpar. Escreva um programa que leia as notas de 30 alunos e calcule e imprima na tela a

quantidade de notas maiores ou iguais a 7.

3. Escreva um programa que leia as notas de 12 alunos e calcule e imprima na tela a mdia
das notas lidas.

4. Escreva um programa que leia 15 valores inteiros e calcula e imprime a soma dos valores
mltiplos de 3 lidos.

5. Escreva um programa que leia 12 valores inteiros e calcula e imprime a quantidade de


valores positivos lidos.

6. Escreva um programa que leia 10 valores inteiros e calcula e imprime a mdia dos valores
pares lidos. 7. Foi feita uma pesquisa entre um grupo de 100 pessoas. Foram coletados os dados de idade e salrio. Fazer um programa que leia as respostas de cada pessoa e calcule e imprima: a mdia de salrio do grupo; a mdia de idades do grupo; quantidade de pessoas com mais de 30 anos; porcentagem de pessoas com salrio at R$100,00; o maior salrio; a maior idade.

Você também pode gostar