Lezioni del modulo (3/3)
L'istruzione switch
L'istruzione switch consente di sostituire lunghe catene di if-else if-else quando si deve confrontare una variabile con diversi valori costanti.
La Sintassi di switch
Lo switch confronta un'espressione con diverse etichette case:
char grade = 'B';
switch (grade) {
case 'A':
std::cout << "Eccellente!" << std::endl;
break;
case 'B':
std::cout << "Molto bene!" << std::endl;
break;
case 'C':
std::cout << "Sufficiente." << std::endl;
break;
default:
std::cout << "Voto non valido." << std::endl;
break;
}
break: è fondamentale. Se omesso, l'esecuzione continuerà nei casi successivi (comportamento noto come fall-through).default: blocco opzionale eseguito se nessuno dei casi precedenti corrisponde al valore testato.
Prova tu
Dato un intero day letto da std::cin, usa switch per stampare 'lunedi' se day è 1, 'martedi' se è 2, e 'altro' per qualsiasi altro valore.
Mostra suggerimento
Struttura lo switch su `day`inserendo`case 1:`, `case 2:`e`default:`, ricordandoti l'istruzione `break` alla fine di ogni ramo.
Soluzione disponibile dopo 3 tentativi
Data una variabile grade letta da std::cin, usa uno switch per stampare 'ottimo' per 'A', 'buono' per 'B', e 'insufficiente' per tutti gli altri casi.
Mostra suggerimento
Per i caratteri usa gli apici singoli, es: `case 'A':`.
Soluzione disponibile dopo 3 tentativi