Pular para o conteúdo

Encadear decisões

objetivo Escolher entre três ou mais caminhos sem se enrolar.

else if testa outra , mas só quando a anterior deu falso. O primeiro que der verdadeiro vence e o resto nem é testado.

Por isso a ORDEM importa. Vá do caso mais restrito pro mais geral, senão um teste largo rouba os casos específicos.

O final, sem condição, pega tudo que sobrou.

exemplo.cclique numa linha pra entender ela

Onde todo mundo escorrega

  • Se você inverter a ordem e testar nota >= 6 primeiro, quem tirou 10 também cai nele e nunca vê o otimo.
  • Usar três if soltos em vez de else if faz os três serem testados, e às vezes imprime duas respostas.

Desafio

Leia um número e imprima positivo, negativo ou zero, conforme o caso.

Saída esperada: Uma linha com uma das três palavras

main.c
linha 1
#include <stdio.h>

int main() {
    int n;

    scanf("%d", &n);

    // tres caminhos: positivo, negativo e zero

    return 0;
}

Ctrl+Enter (Cmd+Enter no Mac) roda. Esc sai do editor.

O que o seu scanf vai ler quando você apertar Rodar.

aperte Rodar pra ver a saída aqui

Dicas

Tenta sozinho primeiro. Travou de verdade, abre a primeira.