Instrukcje warunkowe to mechanizm pozwalający programowi podejmować decyzje i wykonywać różny kod w zależności od spełnienia określonych warunków. Są fundamentem logiki programowania – pozwalają odpowiadać na pytanie „co jeżeli?”.
Wyobraź sobie instrukcje warunkowe jak rozdroże:
- if – „jeżeli warunek jest prawdziwy, idź tą drogą”
- elif – „a jeżeli to nie działa, sprawdź następny warunek”
- else – „w każdym innym przypadku, idź tą drogą”
Instrukcja if
UWAGA!!! PAMIĘTAJCIE O WCIĘCIACH!!!
Podstawowa składnia
if warunek:
# kod wykonywany gdy warunek jest True
instrukcja1
instrukcja2
Kluczowe elementy:
- Słowo kluczowe
if - Warunek (wyrażenie zwracające True lub False)
- Dwukropek
: - Wcięcie 4 spacji (bardzo ważne!)
Najprostszy przykład:
liczba = 10
if liczba > 0:
print("Liczba jest dodatnia")
#wynik:
#Liczba jest dodatnia
Jak to działa:
- Python sprawdza warunek
liczba > 0 10 > 0toTrue- Wykonuje kod w bloku (z wcięciem)
Przykład bez spełnionego warunku
liczba = -5
if liczba > 0:
print("Liczba jest dodatnia")
print("Koniec programu")
#wynik:
#Koniec programu
Blok if został pominięty, ponieważ warunek był False.
Instrukcja else
Gdy potrzebujesz reakcji na „w przeciwnym wypadku”, używasz else.
if warunek:
# kod gdy warunek True
else:
# kod gdy warunek False
Przykład
liczba = -5
if liczba > 0:
print("Liczba jest dodatnia")
else:
print("Liczba nie jest dodatnia")
#wynik
#Liczba nie jest dodatnia
Jak to działa:
- Warunek
liczba > 0to False - Python pomija blok if
- Wykonuje blok else
Instrukcja elif
Gdy masz więcej niż dwa scenariusze, używasz elif (else if).
if warunek1:
# kod gdy warunek1 True
elif warunek2:
# kod gdy warunek1 False, ale warunek2 True
else:
# kod gdy wszystkie warunki False
Przykład – klasyfikacja liczby
liczba = 0
if liczba > 0:
print("Liczba jest dodatnia")
elif liczba == 0:
print("Podano zero")
else:
print("Liczba jest ujemna")
#wynik
#Podano zero
Jak to działa:
liczba > 0to False – pomijamyliczba == 0to True – wykonujemy ten blok- Pomijamy resztę (else nie będzie wykonane)
Wiele warunków elif
Możesz mieć dowolną liczbę elif:
ocena = 85
if ocena >= 90:
print("Ocena: 5")
elif ocena >= 80:
print("Ocena: 4")
elif ocena >= 70:
print("Ocena: 3")
elif ocena >= 60:
print("Ocena: 2")
else:
print("Ocena: 1")
#wynik
#Ocena: 4
Zagnieżdżanie instrukcji warunkowych
Możesz umieszczać instrukcje if wewnątrz innych instrukcji if.
wiek = 20
ma_prawo_jazdy = True
if wiek >= 18:
print("Jesteś pełnoletni")
if ma_prawo_jazdy:
print("Możesz prowadzić samochód")
else:
print("Musisz zrobić prawo jazdy")
else:
print("Jesteś niepełnoletni")
#wynik
#Jesteś pełnoletni
#Możesz prowadzić samochód
Operatory porównania w warunkach
UWAGA: w warunkach nie stosujemy pojedyńczego znaku „=”
a = 10
b = 5
# Równość
if a == b:
print("Równe")
# Nierówność
if a != b:
print("Różne")
# Większe
if a > b:
print("a jest większe od b")
# Mniejsze
if a < b:
print("a jest mniejsze od b")
# Większe lub równe
if a >= b:
print("a jest większe lub równe b")
# Mniejsze lub równe
if a <= b:
print("a jest mniejsze lub równe b")
Operatory logiczne
and – i (oba warunki muszą być True)
wiek = 25
ma_prawo_jazdy = True
if wiek >= 18 and ma_prawo_jazdy:
print("Możesz wypożyczyć samochód")
or – lub (przynajmniej jeden warunek True)
dzien = "sobota"
if dzien == "sobota" or dzien == "niedziela":
print("Weekend!")
not – negacja
jest_deszcz = False
if not jest_deszcz:
print("Nie potrzebujesz parasola")
Łączenie operatorów
wiek = 25
wzrost = 180
waga = 75
if (wiek >= 18 and wiek <= 40) and (wzrost >= 170 and waga <= 90):
print("Spełniasz wymagania")
Operator in
Operator in sprawdza czy element znajduje się w kolekcji.
# Sprawdzanie w liście
owoce = ["jabłko", "banan", "gruszka"]
if "jabłko" in owoce:
print("Jabłko jest na liście")
Przykład – walidacja wyboru
odpowiedz = input("Wybierz: papier, kamień lub nożyce: ")
odpowiedz = odpowiedz.lower()
opcje = ["papier", "kamień", "nożyce"]
if odpowiedz in opcje:
print(f"Wybrałeś: {odpowiedz}")
else:
print("Podałeś niepoprawną wartość")
#wynik
#Wybierz: papier, kamień lub nożyce: Papier
#Wybrałeś: papier
in z różnymi kolekcjami
# Lista
if "a" in ["a", "b", "c"]:
print("Jest w liście")
# Krotka
if 5 in (1, 2, 3, 4, 5):
print("Jest w krotce")
# Zestaw
if "Python" in {"Python", "Java", "C++"}:
print("Jest w zestawie")
# Słownik (sprawdza klucze)
slownik = {"name": "Jan", "age": 25}
if "name" in slownik:
print("Klucz 'name' istnieje")
# String (sprawdza podciąg)
if "Py" in "Python":
print("'Py' jest w 'Python'")
Operator not in
Sprawdza czy elementu NIE MA w kolekcji.
name = "Kama"
if name not in ["Ania", "Kasia", "Zosia"]:
print("Nie ma na liście")
#wynik
#Nie ma na liście
Operator not
Negacja wartości logicznej
cos = False
if not cos:
print("Zmienna 'cos' jest False")
Różnica między not i !=
# != używamy do porównania dwóch wartości
a = 5
b = 10
if a != b:
print("a nie równa się b")
# not używamy do negacji wartości logicznej
is_logged_in = False
if not is_logged_in:
print("Użytkownik nie jest zalogowany")
Operator is vs ==
== sprawdza równość wartości
a = [1, 2, 3]
b = [1, 2, 3]
if a == b:
print("Wartości są równe") # To się wyświetli
is sprawdza tożsamość (ten sam obiekt w pamięci)
a = [1, 2, 3]
b = [1, 2, 3]
c = a
if a is b:
print("To ten sam obiekt") # To się NIE wyświetli
if a is c:
print("To ten sam obiekt") # To się wyświetli
Kiedy używać is:
- Głównie do porównań z
None - Porównań z
TrueiFalse
x = None
# DOBRZE
if x is None:
print("x jest None")
# ŹLE (działa, ale niezgodne z konwencją)
if x == None:
print("x jest None")
Python nie ma switch/case
Uwaga: Python nie posiada konstrukcji switch znanej z C++, Java, JavaScript.
Zamiast switch używamy if-elif-else
wybor = 2
# W innych językach byłby switch
if wybor == 1:
print("Opcja 1")
elif wybor == 2:
print("Opcja 2")
elif wybor == 3:
print("Opcja 3")
else:
print("Nieznana opcja")
Alternatywa – słownik (od Python 3.10 jest match-case)
# Eleganckie rozwiązanie ze słownikiem
opcje = {
1: "Opcja 1",
2: "Opcja 2",
3: "Opcja 3"
}
wybor = 2
print(opcje.get(wybor, "Nieznana opcja"))
Skrócony zapis (inline if)
Operator warunkowy (ternary)
# Pełny zapis
wiek = 20
if wiek >= 18:
status = "Pełnoletni"
else:
status = "Niepełnoletni"
# Skrócony zapis
wiek = 20
status = "Pełnoletni" if wiek >= 18 else "Niepełnoletni"
print(status) # Pełnoletni
Składnia: wartość_gdy_true if warunek else wartość_gdy_false
Przykład praktyczny
# Określanie znaku liczby
liczba = -5
znak = "dodatnia" if liczba > 0 else "ujemna"
# Rabat
cena = 100
ile_sztuk = 5
rabat = 0.1 if ile_sztuk >= 10 else 0
cena_koncowa = cena * (1 - rabat)
# Przywitanie
pora_dnia = "rano"
powitanie = "Dzień dobry" if pora_dnia == "rano" else "Dobry wieczór"
Przykłady praktyczne
Przykład 1: Sprawdzanie parzystości
liczba = 8
if liczba == 0:
print("Podano zero")
elif liczba % 2 == 0:
print("Liczba jest parzysta")
else:
print("Liczba jest nieparzysta")
Przykład 2: Porównywanie dwóch liczb
a = 10
b = 5
print(f"Porównujemy liczby {a} i {b}")
if a > b:
print(f"Większa jest liczba a = {a}")
elif b > a:
print(f"Większa jest liczba b = {b}")
else:
print("Liczby są równe")
Przykład 3: Znajdowanie największej z czterech liczb
a, b, c, d = 10, 5, 18, 1
# Zakładamy że pierwsza jest największa
najwieksza = a
# Sprawdzamy pozostałe
if b > najwieksza:
najwieksza = b
if c > najwieksza:
najwieksza = c
if d > najwieksza:
najwieksza = d
print(f"Największa liczba to: {najwieksza}")
Przykład 4: Prosty kalkulator
liczba1 = 10
liczba2 = 5
wybor = "+"
if wybor == "+":
print(f"{liczba1} + {liczba2} = {liczba1 + liczba2}")
elif wybor == "-":
print(f"{liczba1} - {liczba2} = {liczba1 - liczba2}")
elif wybor == "*":
print(f"{liczba1} * {liczba2} = {liczba1 * liczba2}")
elif wybor == "/":
if liczba2 != 0:
print(f"{liczba1} / {liczba2} = {liczba1 / liczba2}")
else:
print("Nie można dzielić przez zero!")
else:
print("Niepoprawny operator")
Przykład 5: Miesiące roku
nr = 3
if nr == 1:
print("Styczeń")
elif nr == 2:
print("Luty")
elif nr == 3:
print("Marzec")
elif nr == 4:
print("Kwiecień")
elif nr == 5:
print("Maj")
elif nr == 6:
print("Czerwiec")
elif nr == 7:
print("Lipiec")
elif nr == 8:
print("Sierpień")
elif nr == 9:
print("Wrzesień")
elif nr == 10:
print("Październik")
elif nr == 11:
print("Listopad")
elif nr == 12:
print("Grudzień")
else:
print("Nieprawidłowy numer miesiąca")
Przykład 6: Sprawdzanie rozszerzenia pliku
filename = "01012020_sales.xlsx"
if filename.endswith(".xlsx"):
print("TAK")
else:
print("NIE")
Przykład 7: Sprawdzanie wielkich liter
code = "DSVNDOICSN"
if code.isupper():
print("TAK")
else:
print("NIE")
Przykład 8: Sprawdzanie typu zmiennej
number = 0
if isinstance(number, int):
print("TAK")
else:
print("NIE")
Przykład 9: Walidacja długości hasła
password = "cskdnjcasa#!"
if len(password) == 11:
print("Hasło poprawne")
else:
print("Hasło zbyt krótkie")
Przykład 10: Złożona walidacja hasła
password = "cskdnjcasa#!"
if len(password) == 11 and "!" in password:
print("Hasło poprawne")
else:
print("Hasło niepoprawne")
Przykład 11: Sprawdzanie i dodawanie do listy
project_ids = ["02134", "24253"]
project_id = "02135"
if project_id not in project_ids:
project_ids.append(project_id)
print(project_ids)
Przykład 12: Modyfikacja słownika
project_ids = {
"01": "open",
"02": "new",
"03": "in progress",
"04": "completed"
}
if project_ids["02"] == "new":
project_ids["02"] = "open"
print(project_ids)
Przykład 13: Usuwanie z listy
items = ["001", "000", "003", "005", "006"]
item = "001"
if item in items:
items.remove(item)
print(items)
Zadania
Podstawy instrukcji warunkowych
- Stwórz zmienną
temperaturaz wartością 22. Jeśli temperatura jest większa niż 20, wyświetl „Ciepło”, w przeciwnym razie wyświetl „Zimno”. - Pobierz od użytkownika liczbę. Sprawdź czy jest większa od 100 i wyświetl odpowiedni komunikat.
- Stwórz zmienną
wiekz wartością 16. Sprawdź czy osoba jest pełnoletnia (wiek >= 18) i wyświetl odpowiednią informację. - Pobierz od użytkownika jego imię. Jeśli imię to „Admin”, wyświetl „Witaj Administratorze!”, w przeciwnym razie wyświetl „Witaj użytkowniku!”.
- Stwórz zmienną
hasloz jakąś wartością. Sprawdź czy hasło ma długość co najmniej 8 znaków. Wyświetl „Hasło akceptowalne” lub „Hasło za krótkie”.
Instrukcja elif
- Pobierz od użytkownika liczbę. Sprawdź czy jest dodatnia, ujemna czy równa zero. Wyświetl odpowiedni komunikat dla każdego przypadku.
- Stwórz zmienną
ocenaz wartością od 1 do 6. Wyświetl słowną interpretację oceny (1-ndst, 2-dop, 3-dst, 4-db, 5-bdb, 6-cel). - Pobierz od użytkownika wiek. Sklasyfikuj osobę jako: dziecko (0-12), nastolatek (13-17), dorosły (18-64), senior (65+).
- Stwórz zmienną
miesiącz numerem miesiąca (1-12). Wyświetl do jakiej pory roku należy ten miesiąc (wiosna, lato, jesień, zima). - Pobierz od użytkownika ocenę procentową (0-100). Przypisz ocenę literową według skali: A (90-100), B (80-89), C (70-79), D (60-69), F (0-59).
Operatory logiczne (and, or, not)
- Pobierz od użytkownika wiek i sprawdź czy ma prawo jazdy (zmienną bool). Jeśli ma co najmniej 18 lat I ma prawo jazdy, wyświetl „Możesz prowadzić samochód”.
- Stwórz zmienną
dzienz nazwą dnia tygodnia. Sprawdź czy to sobota LUB niedziela i wyświetl „Weekend!” lub „Dzień roboczy”. - Pobierz od użytkownika temperaturę. Sprawdź czy jest między 18 a 24 stopniami (włącznie). Jeśli tak, wyświetl „Komfortowa temperatura”.
- Stwórz zmienną
jest_slonecznie(bool). Jeśli NIE jest słonecznie, wyświetl „Weź parasol”. - Pobierz od użytkownika wzrost (w cm) i wagę (w kg). Jeśli wzrost jest powyżej 180 cm I waga poniżej 80 kg, wyświetl „Spełniasz wymogi”.
- Stwórz program sprawdzający czy rok jest przestępny. Rok jest przestępny jeśli: jest podzielny przez 4 I (nie jest podzielny przez 100 LUB jest podzielny przez 400).
- Pobierz od użytkownika dwie liczby. Sprawdź czy przynajmniej jedna z nich jest większa od 50.
- Stwórz zmienną
pogoda(string) itemperatura(int). Jeśli pogoda to „deszcz” LUB temperatura jest poniżej 10, wyświetl „Zostań w domu”.
Operator in i not in
- Stwórz listę ulubionych kolorów. Pobierz od użytkownika kolor i sprawdź czy jest na liście. Wyświetl odpowiedni komunikat.
- Stwórz listę dostępnych rozmiarów ubrań [„S”, „M”, „L”, „XL”]. Pobierz od użytkownika rozmiar i sprawdź czy jest dostępny.
- Pobierz od użytkownika nazwę owocu. Sprawdź czy NIE znajduje się w liście owoców cytrusowych [„pomarańcza”, „cytryna”, „grejpfrut”, „mandarynka”].
- Stwórz krotkę z nazwami miesięcy letnich. Pobierz nazwę miesiąca i sprawdź czy jest to miesiąc letni.
- Stwórz słownik z kodami krajów (np. {„PL”: „Polska”, „DE”: „Niemcy”}). Pobierz kod kraju i sprawdź czy istnieje w słowniku.
- Pobierz od użytkownika adres email. Sprawdź czy zawiera znak „@”. Jeśli nie, wyświetl „Nieprawidłowy email”.
- Stwórz zestaw zabronionych słów. Pobierz od użytkownika komentarz i sprawdź czy zawiera któreś z zabronionych słów.
Zagnieżdżone instrukcje warunkowe
- Pobierz od użytkownika wiek i czy jest studentem. Jeśli ma co najmniej 18 lat, sprawdź czy jest studentem. Jeśli tak, wyświetl „Zniżka studencka 50%”, jeśli nie „Bilet normalny”.
- Pobierz trzy liczby. Sprawdź czy pierwsza jest największa. Jeśli tak, sprawdź czy druga jest większa od trzeciej.
- Pobierz temperaturę i czy pada deszcz (bool). Jeśli temperatura jest powyżej 20 stopni, sprawdź czy pada. Jeśli nie pada, wyświetl „Idealna pogoda na spacer”.
- Pobierz wzrost i wagę. Oblicz BMI (waga / wzrost²). Jeśli BMI jest poniżej 25, sprawdź czy jest powyżej 18.5 (zdrowy zakres).
- Pobierz liczbę. Sprawdź czy jest dodatnia. Jeśli tak, sprawdź czy jest parzysta czy nieparzysta.
Operator is i isinstance
- Stwórz zmienną z wartością None. Sprawdź czy jest None używając operatora is.
- Pobierz od użytkownika wartość. Sprawdź czy jest typu int używając isinstance().
- Stwórz dwie listy z takimi samymi wartościami. Porównaj je używając == i is. Wyjaśnij różnicę w komentarzu.
- Stwórz zmienną typu float. Sprawdź czy jest instancją klasy (int, float) używając isinstance() z krotką typów.
- Pobierz wartość od użytkownika. Sprawdź czy NIE jest None przed wykonaniem na niej operacji.
Zadania z matematyką
- Pobierz trzy długości boków. Sprawdź czy można z nich zbudować trójkąt (suma dwóch krótszych boków musi być większa od najdłuższego).
- Pobierz współrzędne punktu (x, y). Określ w której ćwiartce układu współrzędnych się znajduje (I, II, III, IV) lub czy leży na osi.
- Pobierz liczbę. Sprawdź czy jest liczbą pierwszą (podzielna tylko przez 1 i siebie).
- Pobierz rok. Sprawdź czy jest rokiem przestępnym i wyświetl ile dni ma luty w tym roku.
- Pobierz trzy liczby. Sprawdź czy tworzą ciąg arytmetyczny (różnica między kolejnymi liczbami jest stała).
Walidacja danych
- Pobierz numer telefonu. Sprawdź czy ma dokładnie 9 cyfr i zaczyna się od cyfry (nie zawiera liter).
- Pobierz adres email. Sprawdź czy zawiera „@” i „.” oraz czy „@” znajduje się przed „.”.
- Pobierz hasło. Sprawdź czy spełnia wymagania: minimum 8 znaków, zawiera wielką literę, małą literę i cyfrę.
- Pobierz kod pocztowy. Sprawdź czy ma format XX-XXX (dwie cyfry, myślnik, trzy cyfry).
- Pobierz numer PESEL (jako string). Sprawdź czy ma dokładnie 11 cyfr.
- Pobierz datę w formacie DD-MM-YYYY. Sprawdź czy miesiąc jest w zakresie 1-12 i dzień w zakresie 1-31.
- Pobierz login. Sprawdź czy ma od 3 do 20 znaków i zawiera tylko litery i cyfry.
Zadania ze stringami
- Pobierz nazwę pliku. Sprawdź rozszerzenie i określ typ pliku (obraz: jpg, png; dokument: pdf, docx; kod: py, js).
- Pobierz zdanie. Sprawdź czy zaczyna się wielką literą i kończy kropką.
- Pobierz tekst. Sprawdź czy składa się tylko z małych liter używając metody islower().
- Pobierz kod produktu. Sprawdź czy jest w formacie: trzy wielkie litery, myślnik, trzy cyfry (np. ABC-123).
- Pobierz imię. Sprawdź czy pierwsza litera jest wielka, a pozostałe małe.
Zadania z listami i kolekcjami
- Pobierz liczbę. Sprawdź czy znajduje się w liście liczb pierwszych [2, 3, 5, 7, 11, 13, 17, 19].
- Stwórz listę zakupów. Pobierz produkt i sprawdź czy jest na liście. Jeśli jest, usuń go. Jeśli nie ma, dodaj.
- Stwórz dwie listy z imionami. Pobierz imię i sprawdź w której liście się znajduje (lub w obu, lub w żadnej).
- Stwórz listę numerów kont bankowych. Pobierz numer konta i sprawdź czy jest na liście (jeśli nie, wyświetl „Konto nie istnieje”).
- Pobierz element. Sprawdź czy występuje jednocześnie w liście i w zestawie (dwie różne kolekcje).
Zadania ze słownikami
- Stwórz słownik z cenami produktów. Pobierz nazwę produktu i wyświetl cenę lub „Produkt niedostępny”.
- Stwórz słownik z danymi logowania (login: hasło). Pobierz login i hasło, sprawdź czy są poprawne.
- Stwórz słownik ze statusami zamówień. Pobierz numer zamówienia i wyświetl jego status lub „Zamówienie nie znalezione”.
- Stwórz słownik z tłumaczeniami (polskie: angielskie). Pobierz słowo polskie i wyświetl tłumaczenie.
- Stwórz słownik z punktacją graczy. Pobierz imię gracza i sprawdź czy przekroczył 100 punktów.
Zadania z wieloma warunkami
- Stwórz prosty system logowania: pobierz login i hasło. Sprawdź kilka warunków (czy pola nie są puste, czy login istnieje, czy hasło jest poprawne).
- Stwórz kalkulator rabatów: pobierz cenę i ilość. Zastosuj rabat: 5% dla 10-19 sztuk, 10% dla 20-49 sztuk, 15% dla 50+ sztuk.
- Stwórz system oceny ryzyka kredytowego: pobierz dochód, wiek i historię kredytową (bool). Określ poziom ryzyka: niskie, średnie, wysokie.
- Pobierz wagę przesyłki i odległość. Oblicz koszt dostawy według zasad: waga do 1kg: 10zł, 1-5kg: 15zł, 5kg+: 20zł. Odległość powyżej 100km dodaje 5zł.
- Stwórz system rezerwacji biletów: pobierz wiek, czy student, dzień tygodnia. Zastosuj odpowiednie zniżki (dzieci 50%, studenci 30%, senior 40%, weekend +20%).
Zadania z operatorem warunkowym (ternary)
- Pobierz liczbę. Używając operatora warunkowego przypisz do zmiennej „parzysta” lub „nieparzysta”.
- Pobierz temperaturę. Używając operatora warunkowego przypisz do zmiennej „ciepło” jeśli >20, w przeciwnym razie „zimno”.
- Pobierz dwie liczby. Używając operatora warunkowego przypisz większą z nich do zmiennej.
- Pobierz wiek. Używając operatora warunkowego przypisz „TAK” lub „NIE” do zmiennej oznaczającej pełnoletność.
- Pobierz ocenę (1-6). Używając operatora warunkowego przypisz „Zaliczone” dla ocen 3-6 lub „Niezaliczone” dla 1-2.
Zadania kompleksowe
- Stwórz quiz z 5 pytaniami. Dla każdej odpowiedzi sprawdź czy jest poprawna. Na końcu wyświetl wynik i ocenę (5 pkt – celujący, 4 pkt – bardzo dobry, itd.).
- Stwórz symulator bankomatu: pobierz PIN (sprawdź poprawność), wybierz operację (wypłata/wpłata/sprawdź saldo), wykonaj operację z walidacją.
- Stwórz grę „Zgadnij liczbę”: komputer losuje liczbę 1-100, użytkownik zgaduje, program podpowiada „za dużo” lub „za mało” (na razie bez pętli, tylko jedna próba).
- Stwórz kalkulator podatku: pobierz dochód roczny, oblicz podatek według progów podatkowych (17% do 120k, 32% powyżej), uwzględnij ulgę podatkową.
- Stwórz system parkingowego: pobierz typ pojazdu (samochód/motocykl/ciężarówka) i czas parkowania (w godzinach). Oblicz koszt według stawek: samochód 4zł/h, motocykl 2zł/h, ciężarówka 8zł/h. Pierwsze 15 minut gratis.
- Stwórz walidator daty: pobierz dzień, miesiąc, rok. Sprawdź czy data jest poprawna (uwzględnij różną liczbę dni w miesiącach i lata przestępne).
- Stwórz konwerter jednostek: pobierz wartość i jednostkę źródłową (km/m/cm), pobierz jednostkę docelową, wykonaj konwersję.
- Stwórz system rekomendacji filmów: pobierz wiek, gatunek filmowy (akcja/komedia/dramat/horror), czy lubi filmy zagraniczne (bool). Na podstawie kryteriów zaproponuj konkretny film.