Күрделі шарттар

Құрамды шарт
Күрделі (құрамды) шарт — логикалық амалдар (and, or, not) көмегімен бір тұтас шартқа біріктірілген бірнеше қарапайым шарт. Қарапайым шарт екі мән арасындағы салыстырудан тұрады (мыс. x >= 5).

Ақиқаттық кестесі (Truth table)

and — логикалық көбейту (конъюнкция, "және"), or — логикалық қосу (дизъюнкция, "немесе"), not — логикалық теріске шығару (инверсия, "емес").

x y x and y x or y not x
00001
01011
10010
11110
AND (және) Тек екеуі де 1 болғанда OR (немесе) Кем дегенде біреуі 1 болса NOT (емес) Керісінше (1 → 0, 0 → 1)
Қысқартылған жазылу
Python тілінің ерекшелігі: салыстыру амалдарының қысқартылған тізбекті жазылуы бар. Мысалы, if 0 < a < b: жазуы if a > 0 and a < b: өрнегімен бірдей нәтиже береді.
Деңгей: Орта

Есеп 1. Тізбекті шарт (Жас санаттары)

Берілді: Адамның жасы (old).
Табу керек: Жасына сай білім алу сатысын анықтау (3-6: балабақша, 6-10: бастауыш, 10-15: негізгі, 15+: жоғары мектеп).
Шешуі (Python коды):
old = int(input("Jasynyzdy engiziniz: "))

if 3 <= old < 6:
    print("Balabaksha")
elif 6 <= old < 10:
    print("Bastayysh mektep")
elif 10 <= old < 15:
    print("Orta mektep")
elif 15 <= old:
    print("Jogary mektep")
Жауабы: old = 3 → "Balabaksha"
Деңгей: Орта

Есеп 2. "AND" операторы (Ширекті анықтау)

Берілді: (x, y) нүктесінің координаттары.
Табу керек: Нүктенің координаталық ширегін and операторымен анықтау.
Шешуі (Python коды):
x = int(input())
y = int(input())

if x > 0 and y > 0:
    print("Birinshi toksan")
elif x < 0 and y > 0:
    print("Ekinshi toksan")
elif x < 0 and y < 0:
    print("Ushinshi toksan")
else:
    print("Tortinshi toksan")
Жауабы:
x = 4, y = 5 → "Birinshi toksan"
x = -4, y = 3 → "Ekinshi toksan"
Бір жолдан оқу
Бір жолдан бірнеше мән оқу үшін map() функциясы split()-пен бірге қолданылады:
a, b, c = map(int, input().split())
Бұл әдіс пернетақтадан 3 санды бір рет бос орынмен бөліп енгізуге мүмкіндік береді.
Деңгей: Қиын

Есеп 3. "OR" операторы

Берілді: a, b, c үш бүтін сан (бір жолда, бос орынмен бөлінген).
Табу керек: Сандардың арасында өзара кері (қосындысы 0-ге тең) жұп бар-жоғын анықтау.
Шешуі (Python коды):
a, b, c = map(int, input().split())

if (a + b == 0) or (a + c == 0) or (b + c == 0):
    print('ia')
else:
    print('jog')
Жауабы: a = 4, b = 10, c = -4 → "ia" (a+c=0 болғандықтан)