Estrutura de repetição PARA

Já precisou implementar um LOOP com número de iterações pré-definido? (iteração é cada vez que as instruções do bloco do loop são executadas) Por exemplo, um algoritmo que realiza a soma dos números de 1 a 100, terá um número de iterações pré-definido (100).

Podemos implementar esse LOOP com qualquer estrutura de repetição (saiba mais sobre as estruturas ENQUANTO e REPITA-ATÉ), mas para isso é necessário utilizar um contador, uma variável que será utilizada para contar quantas iterações foram executadas até o momento (o algoritmo de multiplicação utilizado no artigo sobre algoritmos implementa um contador com a estrutura de repetição ENQUANTO). A estrutura de repetição PARA, implementa um contador implicitamente. Veja como é o seu esquema.

PARA <variável contadora> DE <valor inicial> ATE <valor final> [PASSO <valor de incremento>] FAÇA

<instruções a serem executadas repetidamente até a <variável contadora> atingir o valor final>

FIM-PARA

O passo de incremento é opcional, esse recurso serve pera definir qual o valor do incremento do contador, por exemplo de 1 em 1 (padrão), de 2 em 2, de 3 em 3, etc. Essa estrutura de repetição realiza o incremento de um contator de forma implícita, vejamos graficamente como funciona.

estrutura-PARA

A inicialização da variável contadora é realizada implicitamente, com o <valor inicial> informado da declaração da estrutura PARA. A condição para executar a iteração é que o valor da variável contadora não tenha atingido o <valor final>. E ao final de cada iteração, o valor da variável contadora é incrementado em 1 (ou o valor declarado como PASSO ou <valor de incremento>).

Estrutura PARA na prática!

Vamos implementar como exemplo um algoritmo para calcular o fatorial de um número. Para quem não sabe, fatorial é a multiplicação de todos os números de 1 até ao número que se está calculando. Por exemplo: Fatorial de 5 (5!) = 1 * 2 * 3 * 4 * 5 = 120. Vamos criar um algoritmo utilizando o ENQUANTO primeiro.

algoritmo "FatorialComENQUANTO"

var
   numero : INTEIRO
   fatorial : INTEIRO
   contador : INTEIRO
inicio

      ESCREVA ("Digite o número para calcular o fatorial: ")
      LEIA (numero)

      fatorial := 1
      contador := 1
      ENQUANTO contador <= numero FACA
          fatorial := fatorial * contador
          contador := contador + 1
      FIMENQUANTO

      ESCREVA ("O fatorial de ", numero, " é : ", fatorial)

fimalgoritmo

Veja que foi necessário incrementar o contador explicitamente (linha 16). Com a estrutura de repetição PARA, isso não é necessário. Vejamos agora o mesmo algoritmo implementado com o PARA.

algoritmo "FatorialComPARA"

var
   numero : INTEIRO
   fatorial : INTEIRO
   contador : INTEIRO
inicio

      ESCREVA ("Digite o número para calcular o fatorial: ")
      LEIA (numero)

      fatorial := 1
      PARA contador DE 1 ATE numero FACA
          fatorial := fatorial * contador
      FIMPARA

      ESCREVA ("O fatorial de ", numero, " é : ", fatorial)

fimalgoritmo

Nesta estrutura, não é necessário incrementar nem inicializar o contador, isso é feito automaticamente. O resultado dos dois algoritmos é o mesmo.

Resultado
Fatorial

LOOPs podem ser implementados com qualquer estrutura de repetição, porém, em alguns casos uma estrutura se mostra mais adequada que outras, como nesse caso do fatorial a mais adequada é a estrutura PARA. Conhecer essas estruturas de repetição é muito importante para criar programas melhores. Conheça as estruturas de repetição ENQUANTO e REPITA-ATÉ.

Twitter
Google
Facebook
LinkedIn
Email