terça-feira, 4 de setembro de 2012


Estruturas de repetição (loop ou laços) são essenciais e resolvem diversos problemas e situações em que necessitamos repetir alguma estrutura ou um bloco de código.
Dentre essas estruturas, temos o laço For, For-DownTo, For-in, While e o Repeat-until.

-For
É nós quem determinamos o número de vezes que a repetição acontecerá. Sua estrutura é a seguinte:

for #contador# := #valorInicial# to #valorFinal# do
    #faça_alguma_coisa#

O contador é um número inteiro, uma variável que será usada para proceder com a próxima contagem do loop.
Por exemlplo:




for i := 1 to 10 do
    ShowMessage('O valor de i é ' + IntToStr(i));

Nesse caso, será mostrado uma mensagem contendo o valor de i de 1 até 10.

O valor de i é 1
O valor de i é 2
O valor de i é 3
...
O valor de i é 10

-For-downto

A diferença do laço for-downto é que ao invés de incrementar o contador, ele decrementa.


for i := 10 downto 10 do
    ShowMessage('O valor de i é ' + IntToStr(i));


O valor de i é 10
O valor de i é 9
O valor de i é 8
...
O valor de i é 1

-For-in

O for-in nos permite trabalhar com cada elemento de uma coleção, por exemplo, cada letra de uma palavra.


var
  Nome: string;
  letra: char;
begin
  Nome := 'Cristiano';
for letra in Nome do
    ShowMessage(letra);
end;

Nesse caso, será mostrado uma mensagem com cada letra da variável Nome.

-While

Esse laço só continua repetindo enquanto a condição for verdadeira. Por exemplo, só executa enquanto a variável i for menor que 10.


i:=1;
while i < 10 do
begin
    ShowMessage('O valor de i é ' + IntToStr(i));
    i := i + 1;      // agora i é igual a 2
end;


Neste caso, o código só será executado enquanto i for menor que 10. No caso acrescentamos 1 a i para que continue sendo executado.
Na próxima vez que for executado, i vai ter o valor de 2, então ainda vai continuar sendo executado pois a instrução é verdadeira até que seja menor que 10.
Na terceira vez, i vai valer 3, e assim consecutivamente.

-Repeat

Similar ao While, porém a estrutura é ao contrário. Ele executa e depois verifica a instrução.


i:=1;
repeat
begin
    ShowMessage('O valor de i é ' + IntToStr(i));
    i := i + 1;      // agora i é igual a 2
until i > 10
end;


Neste caso, o código é executado até que i seja maior que 10.

Abraço e até a próxima.



Cursos Online na Área de Informática

Um comentário: