Salt la conținutul principal
Modulul 2 · Lecția 3 din 36/18 în curs~8 min
Lecții din modul (3/3)

Declarația switch

Instrucțiunea switch permite înlocuirea lanțurilor lungi de instrucțiuni if-else if-else atunci când se compară o variabilă cu mai multe valori constante.

Sintaxa switch

Instrucțiunea switch compară o expresie cu mai multe etichete case:

C++
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: este fundamental. Dacă este omisă, execuția va cădea în următoarele cazuri (un comportament cunoscut sub numele de fall-through).
  • default: un bloc opțional executat dacă niciunul dintre cazurile anterioare nu se potrivește cu valoarea testată.

Încercați-l singur

Exercițiu#cpp.m2.l3.e1
Încercări: 0Se încarcă…

Având în vedere o zi întreagă citită din std::cin, utilizați switch pentru a imprima „lunedi” dacă ziua este 1, „martedi” dacă este 2 și „altro” pentru orice altă valoare.

Se încarcă editorul...
Afișează indiciu

Structurați comutatorul pe `day` prin inserarea`case 1:`, `case 2:`și`default:`, amintindu-și declarația `break` la sfârșitul fiecărei ramuri.

Soluție disponibilă după 3 încercări

Exercițiu#cpp.m2.l3.e2
Încercări: 0Se încarcă…

Având în vedere o notă variabilă citită din std::cin, utilizați un comutator pentru a tipări „ottimo” pentru „A”, „buono” pentru „B” și „insuficient” pentru toate celelalte cazuri.

Se încarcă editorul...
Afișează indiciu

Pentru caractere folosiți ghilimele simple, de ex. `cazul 'A':`.

Soluție disponibilă după 3 încercări