W tej lekcji dowiesz się, czym jest wartość logiczna w C++ oraz jak używać instrukcji warunkowej if. Wartość logiczna jest jednym z podstawowych typów danych w programowaniu, który może przyjmować jedną z dwóch wartości: true (prawda) lub false (fałsz). Wartości logiczne są niezwykle ważne w programowaniu, ponieważ pozwalają podejmować decyzje w oparciu o określone warunki.
Instrukcja warunkowa if umożliwia wykonanie fragmentu kodu tylko wtedy, gdy spełniony jest określony warunek logiczny. Dzięki temu możemy kontrolować przepływ programu w zależności od różnych sytuacji.
Przykład kodu – Wartość logiczna i instrukcja if
Utwórz nowy plik o nazwie logic_if.cpp i wklej do niego poniższy kod. Wyjaśnimy krok po kroku, jak działa instrukcja warunkowa if oraz jak używać wartości logicznych.
Kod C++
// Importujemy bibliotekę iostream, aby umożliwić operacje wejścia/wyjścia
#include <iostream>
// Główna funkcja programu
int main() {
// Deklarujemy zmienną logiczną 'isSunny' i przypisujemy jej wartość true (prawda)
bool isSunny = true;
// Sprawdzamy warunek logiczny za pomocą instrukcji if
if (isSunny) {
// Ten blok kodu zostanie wykonany, jeśli zmienna 'isSunny' ma wartość true
std::cout << "Dzisiaj jest słonecznie!" << std::endl;
}
// Deklarujemy zmienną logiczną 'isRaining' i przypisujemy jej wartość false (fałsz)
bool isRaining = false;
// Sprawdzamy kolejny warunek za pomocą instrukcji if
if (isRaining) {
// Ten blok kodu nie zostanie wykonany, ponieważ 'isRaining' jest false
std::cout << "Pada deszcz." << std::endl;
}
// Używamy instrukcji if-else, aby sprawdzić dwie możliwości
int temperature = 15;
if (temperature > 20) {
// Jeśli temperatura jest większa niż 20, zostanie wykonany ten blok kodu
std::cout << "Jest ciepło." << std::endl;
} else {
// W przeciwnym razie (gdy temperatura nie jest większa niż 20) zostanie wykonany ten blok kodu
std::cout << "Jest chłodno." << std::endl;
}
// Instrukcja if z porównaniem liczb
int age = 18;
if (age >= 18) {
// Sprawdza, czy wiek jest większy lub równy 18
std::cout << "Jesteś pełnoletni." << std::endl;
} else {
// W przeciwnym razie
std::cout << "Nie jesteś pełnoletni." << std::endl;
}
// Zwracamy 0, co oznacza, że program zakończył się pomyślnie
return 0;
}
Wyjaśnienie Kodu
- Deklaracja zmiennych logicznych:
bool isSunny = true;– Deklarujemy zmienną logicznąisSunnyi przypisujemy jej wartośćtrue. Oznacza to, że warunek “jest słonecznie” jest spełniony.bool isRaining = false;– Deklarujemy zmienną logicznąisRainingi przypisujemy jej wartośćfalse. Oznacza to, że warunek “pada deszcz” nie jest spełniony.
- Instrukcja if:
if (isSunny) { ... }– Sprawdza, czy zmiennaisSunnyma wartośćtrue. Jeśli tak, wykonuje kod znajdujący się wewnątrz nawiasów klamrowych{ ... }. W tym przypadku wyświetli komunikat “Dzisiaj jest słonecznie!”.if (isRaining) { ... }– Sprawdza, czy zmiennaisRainingma wartośćtrue. PonieważisRainingjest ustawione nafalse, ten blok kodu nie zostanie wykonany.
- Instrukcja if-else:
- Używamy zmiennej
temperaturedo określenia, czy jest ciepło czy chłodno.if (temperature > 20)sprawdza, czytemperaturejest większa niż 20. Jeśli tak, wyświetla “Jest ciepło.”. - Jeśli warunek nie jest spełniony (czyli
temperaturenie jest większa niż 20), kod przechodzi do częścielsei wyświetla “Jest chłodno.”.
- Używamy zmiennej
- Porównania liczb:
if (age >= 18)– Sprawdza, czy zmiennaagejest większa lub równa 18. Jeśli tak, wyświetla “Jesteś pełnoletni.”.- W przeciwnym razie (
else) wyświetla “Nie jesteś pełnoletni.”.
Podsumowanie
W tej lekcji nauczyłeś się:
- Czym są zmienne logiczne (
bool) w C++ i jakie wartości mogą przechowywać (truelubfalse). - Jak używać instrukcji warunkowej
if, aby wykonywać kod tylko wtedy, gdy spełniony jest określony warunek. - Jak używać instrukcji
if-elsedo sprawdzania dwóch możliwości i reagowania na nie. - Jak używać operatorów porównania (np.
>,<,>=,<=) do porównywania wartości.
Instrukcja if jest jednym z podstawowych narzędzi do podejmowania decyzji w programowaniu. Dzięki niej można kontrolować przepływ programu w zależności od różnych warunków i wartości zmiennych.
