Laços Condicionais

 

Quando não se conhece, previamente, quantas vezes o comando composto do interior da construção será executado, pelo fato do mesmo estar amarrado a uma condição sujeita a modificações pelas instruções do interior do laço.

         As construções mais comuns que implementam laços condicionais são: Enquanto e Repita.

 

·        Construção Enquanto

 

Sintaxe:

 

Enquanto  <condição>  faça

<comando_composto>

Fim_enquanto

 

Em fluxogramas são representadas assim:





Semântica: ao início da construção Enquanto a condição é testada. Se o resultado da avaliação da condição for falso, o comando_composto não será executado e o fluxo de execução prosseguirá pela instrução seguinte ao Fim_enquanto. Se o resultado da avaliação da condição for verdadeiro, o comando_composto será executado e ao seu término a condição será testada novamente. Este processo se repetirá enquanto a condição for verdadeira. Quando esta for falsa, o fluxo de execução prosseguirá pela instrução seguinte ao Fim_enquanto.

 

 

Exercício proposto:

- Escreva um algoritmo para determinar o maior entre dois números reais dados, que será executado quantas vezes o usuário quiser.

 

Fluxograma:





Pseudocódigo:

 

Algoritmo  COMPARA_1

 

Var   A, B    :  real

         RESP  :  literal[1]

Início

         Escreva  “Compara números? (S/N)“

         Leia  RESP

         Enquanto  RESP = “S”  faça

         Escreva  “Digite os dois números: ”

         Leia  A, B

         Escreva  “O maior é “

                  Se  A > B

                            Então

                                     Escreva  A

                   Senão

                                     Escreva  B

         Fim_se

Escreva “Continua comparação? (S/N)”

Leia RESP

Fim_enquanto

         Escreva  “Terminou”

Fim



·        Construção Repita

 

Sintaxe:

 

Repita

<comando_composto>

até que  <condição>

 

Em fluxogramas são representadas assim:





Semântica: o comando_composto é executado uma vez. A seguir a condição é testada: se o resultado da avaliação da condição for falso, o comando_composto será executado novamente e esse processo é repetido até que a condição seja verdadeira, quando então o fluxo de execução prosseguirá pela instrução seguinte ao final da construção.



Exercício proposto:

- Escreva um algoritmo para determinar o maior entre dois números reais dados, que se repita quantas vezes o usuário quiser.

 

Fluxograma:





Pseudocódigo:

 

Algoritmo  COMPARA_2

 

Var   A, B    :  real

         RESP  :  literal[1]

Início

         Repita

Escreva  “Digite os dois números: ”

Leia  A, B

Escreva  “O maior é “

                  Se  A > B

                            Então

                                     Escreva  A

                   Senão

                                     Escreva  B

         Fim_se

Escreva  “Compara mais números? (S/N)”

Leia  RESP

até que  RESP = “N”

         Escreva  “Terminou”

Fim

 

 

-         Aninhamentos

 

É quando uma estrutura de decisão ou de repetição contém outra estrutura de decisão ou de repetição.