Olá,
Galerinha hoje estarei postando mais um tutorial de algoritmo.

Créditos Samuel Dias Neto

Repetição com teste inicial

Esta estrutura permite repetir um trecho de algoritmo diversas vezes. O fluxo de execução é controlado por um teste

feito antes da execução:

enquanto CONDIÇÃO faça

COMANDO1;

COMANDO2;

...........................

...........................

...........................

COMANDOn; fimenquanto;

Quando CONDIÇÃO for falso os COMANDOS serão abandonados e o algoritmo passará para o próximo comando após o

"fimenquanto". Se já da primeira vez o resultado é falso, os COMANDOS não são executados nenhuma vez, o que

representa a característica principal desse modelo de repetição.

Exemplo demonstrativo: algoritmo que calcula a média aritmética de uma quantidade indeterminada de números.

início

inteiro: contador; /*contará quantos números são passados para o programa*/

real: acumulador; /*acumulará a soma dos números passados*/

real: media; /*armazenará o resultado da média aritmética*/

real: numero;/*armazenará os números e controlará o encerramento do programa*/

/*Inicialização das variáveis. É uma boa regra de estilo sempre inicializar (atribuir algum valor) as variáveis

antes de usá-las. Algumas linguagens exigem isso.*/

contador <== 1;

acumulador <== 0;

media <== 0;

numero <== 0;

enquanto (numero >= 0) faça

imprimir ("Entre com um número (-1 para encerrar) :");

ler (numero);

se (numero >=0) /*só computa o número se este for maior ou igual a zero*/

acumulador <== acumulador + numero;

contador <== contador + 1;

fimse;

fimenquanto;

media <== acumulador / contador;

imprimir ("A média aritmética é", media);

fim

Repetição com teste final

Esta estrutura também permite repetir um trecho de algoritmo diversas vezes, porém o fluxo é controlado por um teste

feito no final da execução.

faça

COMANDO1;

COMANDO2;

...........................

...........................

...........................

COMANDOn; enquanto CONDIÇÃO;

Observe que os COMANDOS são executados pelo menos uma vez, independente da CONDIÇÃO. Isto acontece porque a

condição é avaliada após a execução dos comandos, o que representa a característica principal desta estrutura.

Exemplo demonstrativo: algoritmo que calcula a média aritmética de uma quantidade indeterminada de números.

início

inteiro: contador; /*contará quantos números são passados para o programa*/

real: acumulador; /*acumulará a soma dos números passados*/

real: media; /*armazenará o resultado da média aritmética*/

real: numero;/*armazenará os números e controlará o encerramento do programa*/

/*Inicialização das variáveis. É uma boa regra de estilo sempre inicializar (atribuir algum valor) as variáveis

antes de usá-las. Algumas linguagens exigem isso.*/

contador <== 1;

acumulador <== 0;

media <== 0;

numero <== 0;

faça

imprimir ("Entre com um número (-1 para encerrar) :");

ler (numero);

se (numero >=0) /*só computa o número se este for maior ou igual a zero*/

acumulador <== acumulador + numero;

contador <== contador + 1;

fimse;

enquanto (numero >= 0);

media <== acumulador / contador;

imprimir ("A média aritmética é", media);

fim

R