Rexx - Tomada de Decisão

As estruturas de tomada de decisão requerem que o programador especifique uma ou mais condições a serem avaliadas ou testadas pelo programa.

O diagrama a seguir mostra a forma geral de uma estrutura típica de tomada de decisão encontrada na maioria das linguagens de programação.

Há uma instrução ou instruções a serem executadas se a condição for determinada como truee, opcionalmente, outras instruções a serem executadas se a condição for determinada como false.

Vejamos as várias declarações de tomada de decisão disponíveis no Rexx.

Sr. Não. Declaração e descrição
1 Declaração If

A primeira declaração de tomada de decisão é a ifdeclaração. Aif declaração consiste em uma expressão booleana seguida por uma ou mais declarações.

2 Declaração If-else

A próxima declaração de tomada de decisão é a declaração if-else. Aif instrução pode ser seguida por uma instrução else opcional, que é executada quando a expressão booleana é falsa.

Instruções aninhadas If

Às vezes, é necessário ter multiple if statementsembutidos uns nos outros, como é possível em outras linguagens de programação. Na Rexx também isso é possível.

Sintaxe

if (condition1) then 
   do 
      #statement1 
   end 
else 
   if (condition2) then 
      do 
      #statement2 
   end

Diagrama de fluxo

O diagrama de fluxo de aninhados if declarações são as seguintes -

Vamos dar um exemplo de aninhado if declaração -

Exemplo

/* Main program */ 
i = 50 
if (i < 10) then 
   do 
      say "i is less than 10" 
   end 
else 
if (i < 7) then 
   do 
      say "i is less than 7" 
   end 
else 
   do 
      say "i is greater than 10" 
   end

O resultado do programa acima será -

i is greater than 10

Selecione as declarações

Rexx oferece a instrução select que pode ser usada para executar expressões com base na saída da instrução select.

Sintaxe

A forma geral desta declaração é -

select 
when (condition#1) then 
statement#1 

when (condition#2) then 
statement#2 
otherwise 

defaultstatement 
end

O funcionamento geral desta declaração é o seguinte -

  • A instrução select tem um intervalo de instruções when para avaliar diferentes condições.

  • Cada when clause tem uma condição diferente que precisa ser avaliada e a instrução subsequente é executada.

  • A instrução caso contrário é usada para executar qualquer instrução padrão se as condições anteriores não evaluate to true.

Diagrama de fluxo

O diagrama de fluxo do select declaração é a seguinte

O programa a seguir é um exemplo da instrução case em Rexx.

Exemplo

/* Main program */ 
i = 50 
select 
when(i <= 5) then 
say "i is less than 5" 

when(i <= 10) then 
say "i is less than 10" 

otherwise 
say "i is greater than 10" 
end

A saída do programa acima seria -

i is greater than 10