Салыстыру және логикалық операторлар

⏱️ 20 минут 📚 Деңгей: Бастауыш

Теория

if операторы

age = 18
if age >= 18:
    print("Сіз ересексіз")

Егер шарт орындалмаса, ештеңе болмайды.

if-else

score = 85
if score >= 50:
    print("Тест тапсырылды")
else:
    print("Тест тапсырылмады")

if-elif-else (көп тармақты)

grade = 85
if grade >= 90:
    letter = "A"
elif grade >= 80:
    letter = "B"
elif grade >= 70:
    letter = "C"
elif grade >= 60:
    letter = "D"
else:
    letter = "F"
print(f"Баға: {letter}")

Кірістірілген if (nested if)

age = 20
has_ticket = True

if age >= 18:
    if has_ticket:
        print("Кіруге рұқсат")
    else:
        print("Билет керек")
else:
    print("Жас шектеуі")

Тернарлық оператор (бір жолдық if)

Синтаксис: [шарт True] if [шарт] else [шарт False]

age = 17
status = "Кәмелетті" if age >= 18 else "Кәмелетке толмаған"
print(status)  # "Кәмелетке толмаған"

# Басқа мысалдар:
max_val = a if a > b else b
parity = "жұп" if x % 2 == 0 else "тақ"

Практикалық мысалдар

# Калькулятор
a = float(input("Бірінші сан: "))
op = input("Оператор (+, -, *, /): ")
b = float(input("Екінші сан: "))

if op == "+":
    print(a + b)
elif op == "-":
    print(a - b)
elif op == "*":
    print(a * b)
elif op == "/":
    if b != 0:
        print(a / b)
    else:
        print("Қате: нөлге бөлу")
else:
    print("Белгісіз оператор")

# Жыл мезгілін анықтау
month = int(input("Ай саны (1-12): "))
if month in [12, 1, 2]:
    season = "Қыс"
elif month in [3, 4, 5]:
    season = "Көктем"
elif month in [6, 7, 8]:
    season = "Жаз"
elif month in [9, 10, 11]:
    season = "Күз"
else:
    season = "Қате ай"
print(season)

Қателер және жақсы тәжірибелер

Қате: elif орнына бірнеше if қолдану (барлығы тексеріледі).

x = 5
if x > 0:
    print("оң")
if x > 2:
    print("2-ден үлкен")  # Бұл да орындалады

Дұрысы: тек бір тармақ орындалады.

if x > 0:
    print("оң")
elif x > 2:
    print("2-ден үлкен")  # орындалмайды

Қате: else-тен кейін шарт жазуға болмайды.

Қате: тапсырма = мен салыстыру == шатастыру.

# if x = 5:   # SyntaxError
if x == 5:
    print("x 5-ке тең")