Teste no Início: enquanto-faça.

No algoritmo 15 é apresentado o formato básico da estrutura de repeticão enquanto-faca. Antes de entrar na estrutura de repetição, uma expressão lógica é avaliada e caso o resultado da mesma for verdadeiro, os comandos que estão dentro da estrutura serão executados. Após a execução dos comandos, a expressão lógica é novamente avaliada. Caso o resultado da expressão lógica for falso, o algoritmo sai da estrutura de repetição e segue para a próxima linha.

De maneira geral, o mecanismo que altera o valor da expressão lógica que controla o laço está embutido dentro do bloco de comandos ou depende de alguma variável externa que será fornecida em tempo de execução.

A estrutura enquanto-faça é usada principalmente quando não se sabe com antecedência a quantidade de repetições que precisam serrealizadas. Por exemplo, suponha que estamos oferecendo ao usuário 3 opções de menu sendo que uma dessas opções seria a de sair do programa. Caso desejemos que o usuário possa executar várias vezes as opções dispostas no menu, não temos como adivinhar quando o usuário irá optar por sair do algoritmo, sendo assim, não podemos limitar a repetição à um determinado número de vezes.

Considere um problema mais específico onde necessitamos fazer a leitura de vários nomes de pessoas e a cada nome que é lido devemos escrever na tela a frase "O nome digitado foi nome", onde nome é a variável. A princípio isso deve ser feito inúmeras vezes e quando o usuário digitar um nome igual a ``fim'' o algoritmo deve parar. Da mesma maneira que no exemplo anterior não podemos definir quando o usuário irá digitar ``fim'', e não temos como precisar a quantidade de vezes que o algoritmo deverá repetir esse conjunto de ações.


\begin{algorithm}
% latex2html id marker 2053\caption{ Estrutura de repetição...
...gica>}
\STATE{<bloco de comandos>}
\ENDWHILE
\end{algorithmic}\end{algorithm}

root 2009-03-12