Podejmowanie decyzji w programie jest kluczową częścią logiki programowania, pozwalającą na wykonanie różnych fragmentów kodu w zależności od spełnienia określonych warunków. W języku C++ do podejmowania decyzji służą głównie instrukcje warunkowe i instrukcje wyboru. Poniżej przedstawiam szczegółowe informacje na temat tych konstrukcji.
1. Instrukcje warunkowe: if
, else if
, else
Instrukcje warunkowe pozwalają na wykonanie określonego kodu, gdy spełniony jest dany warunek. Podstawową formą jest instrukcja
if
.
Przykład 1: Prosta instrukcja warunkowa.
int liczba = 10;
if (liczba > 5) {
cout << "Liczba jest większa niż 5." << endl;
}
Przykład 2: Instrukcja warunkowa z
else
.
if (liczba > 5) {
cout << "Liczba jest większa niż 5." << endl;
} else {
cout << "Liczba jest mniejsza lub równa 5." << endl;
}
Przykład 3: Instrukcja warunkowa z
else if
.
if (liczba > 10) {
cout << "Liczba jest większa niż 10." << endl;
} else if (liczba > 5) {
cout << "Liczba jest większa niż 5 ale mniejsza lub równa 10." << endl;
} else {
cout << "Liczba jest mniejsza lub równa 5." << endl;
}
2. Zagnieżdżone instrukcje warunkowe
Zagnieżdżone instrukcje warunkowe to instrukcje
if
umieszczone wewnątrz innych instrukcji
if
lub
else
, pozwalające na testowanie wielu warunków.
Przykład 1: Zagnieżdżona instrukcja warunkowa.
int x = 10, y = 20;
if (x > 5) {
if (y > 15) {
cout << "x jest większe niż 5, a y jest większe niż 15." << endl;
}
}
Przykład 2: Zagnieżdżona instrukcja warunkowa z
else
.
if (x > 5) {
if (y > 15) {
cout << "x jest większe niż 5, a y jest większe niż 15." << endl;
} else {
cout << "x jest większe niż 5, ale y jest mniejsze lub równe 15." << endl;
}
}
Przykład 3: Wiele zagnieżdżonych poziomów.
if (x > 5) {
if (y > 15) {
if (z > 25) {
cout << "x > 5, y > 15, z > 25" << endl;
}
}
}
3. Instrukcje wyboru: switch
Instrukcja
switch
pozwala na wykonanie różnych fragmentów kodu w zależności od wartości wyrażenia. Jest szczególnie użyteczna, gdy trzeba porównać tę samą zmienną do wielu różnych wartości.
Przykład 1: Prosta instrukcja
switch
.
int opcja = 2;
switch (opcja) {
case 1:
cout << "Wybrano opcję 1." << endl;
break;
case 2:
cout << "Wybrano opcję 2." << endl;
break;
default:
cout << "Nieznana opcja." << endl;
}
Przykład 2: switch
bez
break
(przepływ przez przypadki).
switch (opcja) {
case 1:
case 2:
cout << "Wybrano opcję 1 lub 2." << endl;
break;
case 3:
cout << "Wybrano opcję 3." << endl;
// Brak break powoduje, że wykonanie przejdzie do default.
default:
cout << "To jest domyślna opcja." << endl;
}
Przykład 3: switch
z wykorzystaniem
enum
.
enum DniTygodnia {Poniedzialek, Wtorek, Sroda, Czwartek, Piatek, Sobota, Niedziela};
DniTygodnia dzis = Sroda;
switch (dzis) {
case Poniedzialek:
cout << "Dzisiaj jest poniedziałek." << endl;
break;
case Wtorek:
cout << "Dzisiaj jest wtorek." << endl;
break;
// i tak dalej dla pozostałych dni
default:
cout << "Błąd: nieznany dzień!" << endl;
}
Instrukcje warunkowe i wyboru są niezbędne w programowaniu do kontrolowania przepływu programu w zależności od spełnienia określonych warunków. Pozwalają na tworzenie bardziej dynamicznych i interaktywnych aplikacji.