Estruturas de decisão encadeadas – if – else – if – else

Por: Eduardo Casavella

Chamamos de estruturas de decisão encadeadas, quando uma estrutura de decisão está localizada dentro do lado falso da outra. Este tipo de estrutura também é conhecida como seleção “aninhada” ou seleção “encaixada”.

Qualquer que seja o termo usado para identificar a estrutura, o importante é que esse formato com uma estrutura de seleção dentro da outra permite fazer a escolha de apenas um entre vários comandos possíveis.

Vejamos um exemplo em pseudocódigo.

Exemplo:

Receber os valores inteiros e verificar qual dos valores é o maior. Emitir uma mensagem caso o valores sejam iguais.

Algoritmo MaiorNumero;
Var
 N1,N2: Inteiro;
Inicio
       Escreva("Digite o primeiro número: ");
       Leia(N1);
       Escreva("Digite o segundo número: ");
       Leia(N2);
       Se (N1 == N2) então
               Escreva ("Os números são iguais”);
       Senão
               Se (N1 > N2) então
                       Escreva("O maior valor é = ",N1);
               Senão
                       Escreva("O maior valor é = ",N2);
Fim.

Em linguagem C podemos usar estruturas if – else -if encadeadas para construir o código equivalente.

#include <stdio.h>
#include <stdlib.h>
int main (void)
{
	int N1, N2 ;
	printf("Digite o primeiro numero: ");
	scanf("%d", &N1);
	printf("Digite o segundo numero: ");
	scanf("%d", &N2);
	
	if (N1 == N2)
		printf("Os numeros sao iguais!");
	else
		if (N1 > N2)
			printf("O maior valor e = %d", N1);
		else
			printf("O maior valor e = %d", N2);
	
	printf("\n");
	system("pause");
	return (0);
}

Tela de execução

execução exemplo estrutura if

Execução do exemplo de Estrutura de decisão encadeada

Você pode usar vários if…else um dentro do outro, tudo depende de quantas opções você tem disponíveis.  Note bem que neste caso, ao usar if…else encadeado (aninhado) uma condição exclui a outra.

Para saber mais sobre estruturas de decisão veja: http://linguagemc.com.br/estrutura-de-decisao/

Até a próxima!

Uma resposta a Estruturas de decisão encadeadas – if – else – if – else