Klasa 8 szkoły podstawowej • Python
Jak program podejmuje decyzje? Poznaj instrukcję warunkową, operatory porównania oraz zapis if, else i elif. Na końcu czekają proste ćwiczenia.
1. Czym jest instrukcja warunkowa?
True) albo fałszywy (False).Takie decyzje podejmujemy codziennie: jeśli jest zimno, zakładamy kurtkę; w przeciwnym razie wybieramy lżejszy strój. W programie możemy sprawdzić, czy uczeń zdobył wymaganą liczbę punktów albo która liczba jest większa.
2. Jak działa if…else?
if oznacza „jeżeli”, a else — „w przeciwnym razie”. Wybierana jest jedna z dwóch gałęzi.
pada
deszcz?
Romb przedstawia warunek. Wychodzą z niego dwie gałęzie: TAK (warunek prawdziwy) i NIE (warunek fałszywy). Strzałki pokazują, które działanie zostanie wykonane.
odpowiedz = input("Czy pada deszcz? Wpisz tak lub nie: ")
if odpowiedz == "tak":
print("Zostaję w domu.")
else:
print("Idę na spacer.")
print("Miłego dnia!")
- Wpisz dokładnie
taklubnie, małymi literami. - Dla
takprogram wyświetli „Zostaję w domu.”. - Dla
niewyświetli „Idę na spacer.”. W tym prostym przykładzie każda odpowiedź różna odtaktrafia doelse. - „Miłego dnia!” pojawi się w każdym przypadku — jest poza blokami warunkowymi.
3. Dwukropki i wcięcia
- Po warunku w wierszu
ifwpisujemy dwukropek. - Po
elserównież wpisujemy dwukropek. Przyelsenie dopisujemy warunku. - Polecenia należące do danej gałęzi mają wcięcie. Zaleca się 4 spacje.
- Wszystkie polecenia tego samego bloku mają takie samo wcięcie.
ifi odpowiadające muelsezapisujemy na tym samym poziomie wcięcia.
punkty = 12
if punkty >= 10:
print("Brawo!")
print("Cel osiągnięty.")
else:
print("Spróbuj jeszcze raz.")
4. Krótka wersja: samo if
Jeśli chcemy coś zrobić tylko wtedy, gdy warunek jest spełniony, możemy pominąć else. Gdy warunek jest fałszywy, program pomija blok if i przechodzi dalej.
liczba = int(input("Podaj liczbę: "))
if liczba == 0:
print("Podano zero.")
print("Koniec sprawdzania.")
5. Operatory porównania
Wynikiem poniższych porównań jest True lub False.
| Operator | Znaczenie | Przykład | Wynik |
|---|---|---|---|
== |
Równy | 7 == 7 |
True |
!= |
Różny | 7 != 4 |
True |
< |
Mniejszy | 7 < 4 |
False |
> |
Większy | 7 > 4 |
True |
<= |
Mniejszy lub równy | 7 <= 7 |
True |
>= |
Większy lub równy | 4 >= 7 |
False |
punkty = 10 przypisuje wartość. punkty == 10 sprawdza, czy wartość wynosi 10.6. Więcej możliwości: elif
elif oznacza „w przeciwnym razie, jeżeli”. Pozwala sprawdzić kolejny warunek. W jednym łańcuchu if…elif…else wykonuje się tylko pierwszy blok, którego warunek jest prawdziwy; jeśli żaden nie jest prawdziwy, wykonuje się blok else.
a = int(input("Podaj pierwszą liczbę: "))
b = int(input("Podaj drugą liczbę: "))
if a > b:
print("Większa liczba to", a)
elif a < b:
print("Większa liczba to", b)
else:
print("Liczby są równe.")
| Dane a, b | Wynik |
|---|---|
| 9, 4 | Większa liczba to 9 |
| 3, 8 | Większa liczba to 8 |
| 5, 5 | Liczby są równe. |
7. Łączenie warunków
| Operator | Znaczenie | Przykład |
|---|---|---|
and |
Oba warunki muszą być prawdziwe | punkty >= 10 and punkty <= 20 — punkty od 10 do 20 włącznie |
or |
Co najmniej jeden warunek musi być prawdziwy | temperatura < 0 or temperatura > 30 — poniżej 0 lub powyżej 30 |
not |
Odwraca prawdę i fałsz | not (liczba == 0) — liczba nie jest zerem |
Na początek wystarczą proste porównania. Warunki złożone przydadzą się, gdy będziesz sprawdzać kilka wymagań jednocześnie.
8. Najczęstsze błędy
- Brak dwukropka po
if,eliflubelse. - Brak wcięcia albo różne wcięcia w jednym bloku.
- Użycie
=zamiast==przy porównaniu. - Porównywanie tekstu z
input()z liczbą — do liczb całkowitych użyjint(input(...)). - Zapomnienie o wartości granicznej:
> 10nie obejmuje 10, a>= 10obejmuje.
W ćwiczeniach wpisuj poprawne liczby całkowite. Tekst taki jak „pięć” nie zostanie zamieniony przez int().
9. Proste ćwiczenia dla uczniów
Ćwiczenie 1. Co wyświetli program?
punkty = 10
if punkty >= 10:
print("Poziom ukończony")
else:
print("Graj dalej")
print("Koniec")
- Zapisz oba komunikaty, które pojawią się na ekranie.
- Zmień
punktyna 9. Co program wyświetli teraz?
Sprawdź odpowiedź do ćwiczenia 1
Dla 10: „Poziom ukończony”, a potem „Koniec”. Dla 9: „Graj dalej”, a potem „Koniec”.
Ćwiczenie 2. Liczba dodatnia czy niedodatnia?
Napisz program, który pobiera liczbę całkowitą do zmiennej liczba. Jeśli liczba jest większa od zera, wyświetla „Liczba dodatnia”. W przeciwnym razie wyświetla „Liczba niedodatnia”.
Podpowiedź: użyj int(input(...)), warunku liczba > 0 i else. Zero jest liczbą niedodatnią.
| Dane do sprawdzenia | Oczekiwany komunikat |
|---|---|
| 6 | Liczba dodatnia |
| -3 | Liczba niedodatnia |
| 0 | Liczba niedodatnia |
Pokaż rozwiązanie ćwiczenia 2
liczba = int(input("Podaj liczbę całkowitą: "))
if liczba > 0:
print("Liczba dodatnia")
else:
print("Liczba niedodatnia")
Ćwiczenie 3. Czy wystarczy punktów?
W grze do przejścia na kolejny poziom potrzeba co najmniej 15 punktów. Napisz program, który pyta o liczbę punktów. Jeśli gracz ma 15 lub więcej, wyświetla „Przechodzisz dalej!”. W przeciwnym razie wyświetla „Zdobądź więcej punktów.”.
Sprawdź program dla: 14, 15 i 20 punktów.
Pokaż rozwiązanie ćwiczenia 3
punkty = int(input("Ile masz punktów? "))
if punkty >= 15:
print("Przechodzisz dalej!")
else:
print("Zdobądź więcej punktów.")
Dla 14 — „Zdobądź więcej punktów.”. Dla 15 i 20 — „Przechodzisz dalej!”.
if sprawdza warunek, elif sprawdza kolejną możliwość, a else obsługuje pozostały przypadek. Dwukropki i wcięcia są częścią składni Pythona.









