5 – PYTHON. Instrukcja warunkowa
Python posiada instrukcję warunkową, działającą podobnie jak w środowisku Scratch. Służy ona do sprawdzania określonych warunków i w zależności od tego, czy są spełnione, program wykonuje odpowiednie instrukcje.
Poniższy rysunek przedstawia schemat instrukcji warunkowych w Scratchu i Pythonie.
Pierwsza instrukcja warunkowa sprawdza, czy warunek jest spełniony. Jeśli tak, wykonywana jest instrukcja_1. W przeciwnym razie, instrukcja_1 jest pomijana.
Druga instrukcja warunkowa sprawdza warunek. Jeśli jest on spełniony, zostanie wykonana instrukcja_1. W przeciwnym razie program zrealizuje instrukcję_2.
W Pythonie kluczową rolę w instrukcjach warunkowych odgrywają wcięcia, które tworzą bloki kodu. Każda instrukcja znajdująca się pod wyrażeniem if lub else, rozpoczynająca się od wcięcia, jest jego częścią.
Wcięcie można wstawić za pomocą czterech spacji lub jednego tabulatora.
Operatory porównania i logiczne
OPERATORY PORÓWNANIA
OPERATOR | NAZWA | PRZYKŁAD | OPIS |
---|---|---|---|
== | równy | x == y | x równe y |
!= | różny | x != y | x różne od b |
> | większy | x > y | x większe od y |
< | mniejszy | x < y | x mniejsze od y |
<= | mniejszy lub równy | x <= y | x mniejsze lub równe y |
>= | większy lub równy | x >= y | x większe lub równe y |
OPERATORY LOGICZNE
OPERATOR | NAZWA | PRZYKŁAD | OPIS |
---|---|---|---|
and | koniunkcja (i) | x > 5 and x < 7 | x większe od 5 i x mniejsze od 7 |
or | alternatywa (lub) | x < 5 or x > 7 | x mniejsze od 5 lub x większe od 7 |
not | negacja | not x < 10 | nieprawda, że x jest mniejsze od 10 |
PRZYKŁADY
Sprawdzenie pełnoletności:
wiek = 20
if wiek >= 18:
print("Jesteś pełnoletni.")
else:
print("Nie jesteś pełnoletni.")
Sprawdzenie parzystości liczby:
liczba = 4
if liczba % 2 == 0:
print("Liczba jest parzysta.")
else:
print("Liczba jest nieparzysta.")
Walidacja hasła:
haslo = "tajnehaslo"
if haslo == "tajnehaslo":
print("Dostęp przyznany.")
else:
print("Dostęp zabroniony.")
Ocena temperatury:
temperatura = 30
if temperatura > 25:
print("Jest gorąco.")
elif temperatura > 15:
print("Jest ciepło.")
else:
print("Jest zimno.")
Sprawdzenie czy podana liczba jest większa niż 5 i mniejsza niż 10
liczba = float(input("Podaj liczbę: "))
if liczba > 5 and liczba < 10:
print("liczba", liczba, "jest większa niż 5 i mniejsza niż 10)
else:
print("Podana liczba nie jest większa niż 5 i mniejsza niż 10)
Ćwiczenia do samodzielnego wykonania
Napisz program sprawdzający czy podana liczba całkowita jest dodatnia.
Przykładowy wynik działania programu:
Podaj liczbę: 4
Liczba 4 nie jest liczbą dodatnią.
Napisz program obliczający wskaźnik BMI. Program ma za zadanie pobrać od użytkownika za pomocą instrukcji input() niezbędne dane (wzrost i masa), a następnie wyświetlić informację czy BMI jest prawidłowe czy też nie. Przyjmij, że prawidłowy BMI mieści się w zakresie od 18,5 do 24,5.
BMI oblicza się, dzieląc masę ciała podaną w kilogramach przez wzrost do kwadratu wyrażony w metrach. Pamiętaj, że BMI należy traktować bardziej jako wskazówkę niż dokładny wyznacznik masy ciała. Ponadto wskaźnika BMI nie powinno się stosować u dzieci i młodzieży.
Przykładowy wynik działania programu:
wzrost [m]: 1.88 masa [kg]: 80 BMI = 22 BMI jest prawidłowe
Zmodyfikuj zadanie 2. Tym razem program ma sprawdzać dodatkowo pozostałe kryteria BMI. Przyjmij następujące wartości BMI:
- Niedowaga <18,5
- Prawidłowa masa ciała 18,5–24,5
- Nadwaga 24,6–29,9
- Otyłość ≥30
Każdy przypadek przedstaw jako oddzielną instrukcję warunkową.
Napisz prosty program kalkulatora, który wykonuje podstawowe operacje: dodawanie, odejmowanie, mnożenie i dzielenie. Przedstaw każdą operację jako osobną instrukcję warunkową..
Stwórz program, który porówna dwie dowolne liczby i wyświetli, która z nich jest większa. Pomijamy sytuację, w której obydwie wprowadzone liczby są równe.
Przykładowy wynik działania programu:
Pierwsza liczba: 1
Druga liczba [różna od pierwszej]: -1
Liczba 1.0 jest większa od liczby -1.0
Pamiętaj, że rozwiązania zadań służą wyłącznie do sprawdzenia poprawności wykonania ćwiczenia. Do programowania możesz użyć platformy Trinket.
liczba = int(input('Liczba: '))
if liczba > 0:
print('liczba dodatnia')
w = float(input("wzrost [m]:"))
m = float(input("masa [kg]:"))
BMI = m / (w ** 2)
print('BMI =', BMI)
if BMI > 18.4 and BMI < 24.6:
print("BMI jest prawidłowe")
else:
print("BMI nie jest prawidłowe")
w = float(input("wzrost [m]:"))
m = float(input("masa [kg]:"))
BMI = m / (w ** 2)
print('BMI =', BMI)
if BMI < 18.5:
print("niedowaga")
if BMI > 18.4 and BMI < 24.6:
print("BMI jest prawidłowe")
if BMI > 24.5 and BMI < 30:
print("nadwaga")
if BMI >= 30:
print("otyłość")
a = float(input("Podaj a: "))
b = float(input("Podaj b: "))
dzialanie = input("Działanie +, -, *, /:")
if dzialanie == "+":
wynik = a + b
print(a, '+', b, '=', wynik)
if dzialanie == "-":
wynik = a - b
print(a, '-', b, '=', wynik)
if dzialanie == "*":
wynik = a * b
print(a, '*', b, '=', wynik)
if dzialanie == "/":
wynik = a / b
print(a, '/', b, '=', wynik)
a = float(input('Pierwsza liczba: '))
b = float(input('Druga liczba [różna od pierwszej]: '))
if a < b:
print('Liczba', b, 'jest większa od liczby', a)
else:
print('Liczba', a, 'jest większa od liczby', b)