2
respostas

Else dentro de If: Por que não compila ?

#include <stdio.h>

int main() {
//imprime cabeçalho do jogo
    printf("******************************************\n");
    printf("* Bem-vindo ao nosso jogo de adivinhação *\n");
    printf("******************************************\n");
    printf("\n \n");


    int numerosecreto = 42;
    int chute;

    printf("Qual é o seu chute? ");
    scanf("%d", &chute);
    printf("Seu chute foi %d\n", chute);


    if (chute == numerosecreto) {
            printf("Parabéns, você acertou!\n");
            printf("Jogue de novo. Você é um bom jogador!\n");
    }

        else {
            if(chute > numerosecreto) {
             printf("Seu chute foi maior que o número secreto.\n");
             }

            else(chute < numerosecreto) {
            printf("Seu chute foi menor que o número secreto.\n");
            }
    }
}

Compreendi que o Else não é obrigatório dentro de um If. Mas por que quando compilo no código acima dá erro ? Existe alguma forma de informar o Else, de modo que seguindo a lógica não precisa informar a condição quando número for menor, ou seja, sem a informação (chute < numerosecreto) ?

2 respostas

Oi Wesley, tudo bem?

O else não tem ()

Para fazer isso você precisa concatenar com um if:

if (chute == numerosecreto) {
}
else if(chute < numerosecreto)) {
}
else {
}

Grato pelo retorno

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software