Créditos FEC-Unicam

Estrutura de repetição

Condição no Início
while condição do comando

Essa estrutura significa que enquanto a condição for verdadeira, o comando será executado repetidamente. Se a condição for falsa, então a repetição será interrompida. Comando pode ser simples ou composto e condição é uma expressão lógica.

Exemplo:

program repeticaoinicio;

var i, soma : integer;

begin


i := 1;
soma := 0;
while (soma < 100) do
begin
i := i * 2;
soma := soma + i;
end;
writeln(soma);
end.
Condição no Fim
repeat comando
until condição

Nessa estrutura o comando é executada, e em seguida é verificado a condição. Se a condição for falsa, então repete-se a execução do comando. Se for verdadeira, então o laço é interrrompido. Comando pode ser simples ou composto e condição é uma expressão lógica. Nesta estrutura o comando é executado pelo menos uma vez. Um ponto interessante para colocarmos aqui é a questão da condição.

Exemplo:

program repeticaofim;

var i, soma : integer;

begin

i := 1;
soma := 0;
repeat
i := i * 2;
soma := soma + i;
until (soma >= 100);
writeln(soma);
end.
Número de Repetições Conhecido
for var-controle := valor-inicial to valor-final do comando

for var-controle := valor-inicial downto valor-final do comando

O significado dessas repetições é: a var-controle recebe o valor-inicial; verifica-se se o valor de var-controle ultrapassa o valor-final; se não ultrapassa, o comando será executado; a seguir, var-controle recebe o valor seguinte (no caso do for-to) ou valor anterior (no caso for-downto); verifica-se se ultrapassa o valor-final; se não ultrapassar, o comando será executado; e assim sucessivamente.

Exemplo:

program repeticaofor;
{ Esse programa calcula 2 elevado n }

var i, n, s : integer;

begin


s := 0;
read(n);
for i:= 1 to n do
s := s * 2;
writeln(s);
end.