Lições do módulo (3/3)
A instrução switch
A instrução switch permite substituir longas cadeias de instruções if-else if-else ao comparar uma variável com vários valores constantes.
A sintaxe switch
A declaração switch compara uma expressão com vários rótulos case:
char grade = 'B';
switch (grade) {
case 'A':
std::cout << "Excellent!" << std::endl;
break;
case 'B':
std::cout << "Very well!" << std::endl;
break;
case 'C':
std::cout << "Sufficient." << std::endl;
break;
default:
std::cout << "Invalid grade." << std::endl;
break;
}break: é fundamental. Se omitida, a execução cairá nos próximos casos (um comportamento conhecido como fall-through).default: um bloqueio opcional executado se nenhum dos casos anteriores corresponder ao valor testado.
Experimente também.
Dado um dia inteiro lido de std::cin, use switch para imprimir 'lunedi' se o dia for 1, 'martedi' se for 2 e 'altro' para qualquer outro valor.
Mostrar dica
Estruture o interruptor em `day` inserindo 'case 1:`, `case 2:` e `default:`, lembrando a instrução `break` no final de cada ramificação.
Solução disponível após 3 tentativas
Dada uma nota variável lida de std::cin, use um interruptor para imprimir 'ottimo' para 'A', 'buono' para 'B' e 'insuficiente' para todos os outros casos.
Mostrar dica
Para caracteres, use aspas simples, por exemplo, `caso 'A':`.
Solução disponível após 3 tentativas