Menu
CoddyTech

If - Else Aninhado

Parte da seção Fundamentos do Journey de C da Coddy. Lição 31 de 63.

Podemos aninhar instruções if-else umas dentro das outras. Isso nos permite criar estruturas hierárquicas de tomada de decisão.

Por exemplo:

if (age > 18) {
    if (hasLicense) {
        printf("You can drive");
    } else {
        printf("Get a license first");
    }
} else {
    printf("Too young to drive");
}

Ele pode ser aninhado infinitamente:

if (condition1) {
    if (condition2) {
        if (condition3) {
            // se condition1, condition2 e condition3 forem verdadeiros
        }
    }
}

Sem chaves, um else corresponde ao if mais próximo acima dele que ainda não tenha um else:

if (age > 18)
    if (hasLicense)
        printf("You can drive");
    else
        printf("Get a license first");

Aqui, o else pertence a if (hasLicense), independentemente do que a indentação indique. Use chaves para deixar claro a qual if o else corresponde.

challenge icon

Desafio

Fácil

Crie um programa que verifique se alguém pode andar em uma montanha-russa. Os requisitos são:

  • Deve ter pelo menos 12 anos
  • Deve ter mais de 150 cm
  • Se atender aos dois requisitos, mas tiver menos de 15 anos, precisará estar acompanhado por um adulto

Exiba exatamente estas mensagens para cada caso:

  • Se for muito jovem: Sorry, you are too young
  • Se não tiver altura suficiente: Sorry, you are not tall enough
  • Se tiver menos de 15 anos e não estiver acompanhado por um adulto: Sorry, you need an adult with you
  • Se tiver menos de 15 anos e estiver acompanhado por um adulto: You can ride with adult supervision!
  • Se tiver 15 anos ou mais e altura suficiente: You can ride by yourself!

Experimente você mesmo

#include <stdio.h>

int main() {
    int age, height;
    int hasAdult;
    scanf("%d %d %d", &age, &height, &hasAdult); // Não altere esta linha

    // Escreva seu código abaixo
    
    return 0;
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos

Pratique por conta própria: Compilador de C online