Erlang - declarações aninhadas se

Às vezes, é necessário ter vários ifdeclarações embutidas umas nas outras, como é possível em outras linguagens de programação. Em Erlang também isso é possível.

A imagem a seguir é uma representação de diagrama da instrução aninhada if.

Um exemplo disso é mostrado no programa a seguir -

Exemplo

-module(helloworld). 
-export([start/0]). 

start() -> 
   A = 4, 
   B = 6, 
   if 
      A < B ->
         if 
            A > 5 -> 
               io:fwrite("A is greater than 5"); 
            true -> 
               io:fwrite("A is less than 5")
         end;
      true -> 
         io:fwrite("A is greater than B") 
   end.

No programa acima, o seguinte ponto deve ser observado -

  • Quando o primeiro if condição é avaliada para true, então ele inicia a avaliação da segunda condição if.

A saída do código acima será -

Resultado

A is less than 5