Instrukcje sterujące - instrukcja switch


Wiadomości ogólne

ZAGADNIENIA

  • Funkcja instrukcji switch
  • Schemat incstrukcji switch
  • Operatory logiczne
  • Zastosowania instrukcji switch

    Instrukcja switch służy do podejmowania decyzji warunkowych. Tak naprawdę bez tej instrukcji można się obejść, bowiem instrukcja ta niejako ułatwia nam tylko zapis w przypadku wielu warunków (pisania jest tak samo dużo jak w przypadku instrukcji if, jednak w wielu przypadkach kod jest znacznie czytelniejszy). Nie ma zasady kiedy należy stosować instrukcję switch, a kiedy kilka instrukcji if - else. Wszystko zależy od indywidualnych upodobań.

    Podstawowa składnia instrukcji switch:

                 
                switch (  ) 
                {
                    case ta-wartosc:
                        // Kod, który wykona się, gdy  == ta-wartosc
                    break;
                    case tamta-wartosc:
                        // Kod, który wykona się, gdy  == tamta-wartosc
                     break;
                    // ...
                    default:
                        // Kod, który wykona się, gdy  nie jest zgodna z żadną z wartości przy instrukcjach case
                    break;
                }
                

                    #include <iostream>
                    using namespace std;
                    void graj ()
                    {}
                    void wczytaj ()
                    {}
                    void multiplayer ()
                    {}
                    
                    int main ()
                    {
                    int wybor;
                    cout << "1. Graj\n";
                    cout << "2. Wczytaj stan gry\n";
                    cout << "3. Tryb multiplayer\n";
                    cout << "4. Koniec\n";
                    cout << "Wybierz: ";
                    cin >> wybor;
                    switch ( wybor )
                    {
                    case 1: // Zwróć uwagę na dwukropek po instrukcjach case — nie ma tu średnika!
                    graj();
                    break;
                    
                    case 2:
                    wczytaj();
                    break;
                    
                    case 3:
                    multiplayer();
                    break;
                    
                    case 4:
                    cout << "Dziękuję za grę!\n";
                    break;
                    default: // Zwróć uwagę na dwukropek po default — nie ma tu średnika!
                    cout << "Niepoprawny wybór. Wyjście z programu.\n";
                    break;
                    }
                    }
                    

  • Przydatne narzędzia/oprogramowanie

    SPRAWDŹ SIĘ

    1. Co następuje po instrukcji case?
    A. :
    B. ;
    C. -
    D. Nowy wiersz.
    
    2. Co jest potrzebne, aby kod nie przebiegał przez kolejne bloki case?
    A. end;
    B. break;
    C. stop;
    D. Średnik.
    
    3. Jakie słowo kluczowe obsługuje niespodziewane przypadki?
    A. all
    B. contingency
    C. default
    D. other
    
    4. Jaki będzie wynik wykonania poniższego kodu?
    int x = 0;
    switch( x )
    {
     case 1: cout << "Jeden";
     case 0: cout << "Zero";
     case 2: cout << "Witaj Świecie";
    }
    A. Jeden
    B. Zero
    C. Witaj Świecie
    D. ZeroWitaj Świecie
    
    


    1. Napisz program wykorzystujący instrukcję switch, który dla przekazanej jako parametr całkowity oceny wyświetli ją słownie.
    2. Napisz funkcję, która wyznaczy i zwróci jako wartość ocenę na podstawie punktów zdobytych za kolokwium według następujących reguł: 0-10 pkt – 2, 11-13 pkt 3, 14-16 pkt 4, 17-18 pkt 5. Zad 4. Napisz funkcję menu, która będzie wykonywała następujące polecenia: suma, różnica, iloczyn, iloraz, wprowadzanie danych, wyjście z programu. Zad 5. Napisz program wczytujący kwotę w złotych, a następnie przelicza ją na taka walutę jaką wybierze użytkownik: funty, dolary, euro…. Zad 6. Analogiczne zadanie do poprzedniego ale przeliczające stopnie celcjuasz na inne. Zad 7. Jak wyżej przeliczające metry na inne jednostki miary. Zad 8. Program dnia pewnego seminarium wygląda następująco: 8-11 wykłady, 12-13 dyskusje, 14 obiad, 15-18 prelekcje, 19 kolacja. Program mam za zadanie pobrać godzinę i wyświetlić informacje o wszystkich punktach dnia, które jeszcze będą począwszy od danej godziny




    Przykładowe rozwiązania oraz komentarze do wybranych ćwiczeń i zadań


  • Rozwiązania do ćwiczeń z tej strony

    TEST
    1 --> A, 2 --> B, 3 --> C, 4 --> D.