عبارة elif والعوامل المنطقية

الجزء العملي · تانية ثانوي بكالوريا

1 سؤال تدريب

🐍 Python — الشروط (2)

عبارة elif والعوامل المنطقية

هنتعلم إزاي نضيف أكثر من شرط في نفس الـ if، وإزاي نربط شرطين مع بعض باستخدام and و or.

1 ✍️ عبارة elif

elif معناها "وإلا إذا" — بنستخدمها لما عايزين نضيف شرط تاني بعد if الأول.

💡 إزاي بتشتغل؟
  • لو الشرط الأول صح — ينفذ المعالجة بتاعته.
  • لو مش صح — يشوف الشرط التاني (elif).
  • ولو ده كمان مش صح — يشوف اللي بعده.
  • ولو كل الشروط فشلت — ينفذ else.

🎯 الصيغة:

if condition A :
····print("...")
elif condition B :
····print("...")
else :
····print("...")
⚠️ خد بالك:
• elif بياخد شرط (زي if).
• else مش بياخد شرط.
• ممكن يكون عندك أكثر من elif واحد.
• else بيكون واحد بس في الآخر (اختياري).
2 🎬 تطبيق: حملة بطاقات المركز التجاري

عندنا بطاقات مرقّمة، وكل رقم له جائزة معينة:

🎁 الجوائز:
ticket == 1 ◄ اطبع Free drink
ticket == 2 ◄ اطبع Includes popcorn
ticket == 3 ◄ اطبع Mini snack set
ticket == 4 ◄ اطبع Goods voucher
أي رقم تاني ◄ اطبع No prize
📝 محرر الأكواد tickets.py
Python
1234567891011
ticket = 2 if ticket == 1: print("Free drink") elif ticket == 2: print("Includes popcorn") elif ticket == 3: print("Mini snack set") elif ticket == 4: print("Goods voucher") else: print("No prize")
💡 جرّب تغيّر ticket من 1 لـ 5
— اضغط Run عشان تشوف الناتج في الـ console —
✨ اللي حصل: ticket = 2 — الشرط الأول غلط، الشرط التاني صح — فطبع "Includes popcorn".
✏️
جرب بنفسك

غيّر ticket لـ 1، 3، 4، 5 — وشوف الناتج بيتغير إزاي.

3 🔄 التنفيذ التسلسلي

الكمبيوتر بيقرأ البرنامج من فوق لتحت، وبيدخل على أول شرط يتحقق، وبعدين بيتوقف — مش بيكمل لباقي الـ elif.

💡 مثال: عندنا 3 شروط:
if people == 10 — اطبع "10 or fewer"
elif people == 5 — اطبع "5 or fewer"
elif people == 3 — اطبع "3 or fewer"
📝 محرر الأكواد sequential.py
Python
123456
people = 3 if people == 10: print("10 or fewer") elif people == 5: print("5 or fewer") elif people == 3: print("3 or fewer")
💡 بس أول شرط صح بيتنفذ
— اضغط Run عشان تشوف الناتج في الـ console —
✨ اللي حصل: people = 3 — الشرطين الأول والتاني غلط — التالت صح — فطبع "3 or fewer".
🎯 قاعدة مهمة: ترتيب الشروط مهم! لأن الكمبيوتر بياخد أول شرط يتحقق وبعدين يقف.
4 🎬 تطبيق: رسوم دخول السينما

المطلوب:

🎯 الحالات:
people == 2 ◄ اطبع 10% off
people >= 3 ◄ اطبع 20% off
غير كده ◄ اطبع Regular price
📝 محرر الأكواد cinema.py
Python
1234567
people = 3 if people == 2: print("10% off") elif people >= 3: print("20% off") else: print("Regular price")
💡 جرّب 1، 2، 3، 5
— اضغط Run عشان تشوف الناتج في الـ console —
✨ اللي حصل: people = 3 — الشرط الأول غلط — التاني صح — فطبع "20% off".
5 🥤 تطبيق: عدد الأكواب

المطلوب:

🎯 الحالات:
cup == 0 ◄ اطبع We need to go buy some!
cup <= 3 ◄ اطبع It's almost gone
غير كده ◄ اطبع There is still some
📝 محرر الأكواد cups.py
Python
1234567
cup = 2 if cup == 0: print("We need to go buy some!") elif cup <= 3: print("It's almost gone") else: print("There is still some")
💡 جرّب 0، 2، 5
— اضغط Run عشان تشوف الناتج في الـ console —
✨ اللي حصل: cup = 2 — الشرط الأول غلط — التاني (2 أصغر من أو يساوي 3) صح — فطبع "It's almost gone".
🎯 خد بالك من ترتيب الشروط: لو حطينا elif cup <= 3 قبل if cup == 0، هتشتغل غلط — لأن الكمبيوتر هياخد أول شرط يتحقق ويقف.
6 🔗 العامل المنطقي and

and معناها "و" — بنستخدمها لما عايزين الشرطين يتحققوا مع بعض.

condition 1 and condition 2
🎯 القاعدة: بتترجع True بس لو الاتنين صح. لو واحد منهم غلط — النتيجة غلط.

📝 مثال: خصم 20% لو عدد الأشخاص 2 أو أكثر و النقاط 3000 أو أكثر.

📝 محرر الأكواد and_example.py
Python
1234
people = 3 points = 3500 if people >= 2 and points >= 3000: print("20% off")
💡 الشرطين لازم يتحققوا مع بعض
— اضغط Run عشان تشوف الناتج في الـ console —
✨ اللي حصل: الشرطين اتحققوا مع بعض — فطبع "20% off".
✏️
جرب بنفسك

غيّر points لـ 2000 — الشرط التاني غلط — فمفيش حاجة تطبع. ولو رجّعتها 3500 وقلّلت people لـ 1 — برضه مفيش حاجة.

7 🔗 العامل المنطقي or

or معناها "أو" — بنستخدمها لما عايزين واحد على الأقل من الشرطين يتحقق.

condition 1 or condition 2
🎯 القاعدة: بتترجع True لو واحد على الأقل من الشرطين صح. بتترجع False بس لو الاتنين غلط.

📝 مثال: خصم 10% لو عدد الأشخاص 2 أو أكثر أو النقاط 3000 أو أكثر.

📝 محرر الأكواد or_example.py
Python
1234
people = 3 points = 3500 if people >= 2 or points >= 3000: print("10% off")
💡 واحد على الأقل صح
— اضغط Run عشان تشوف الناتج في الـ console —
✨ اللي حصل: الشرطين اتحققوا — فطبع "10% off".
✏️
جرب بنفسك

غيّر points لـ 2000 — برضه هيطبع "10% off" لأن الشرط الأول (people ≥ 2) صح. الـ or محتاج واحد بس.

8 ⚖️ الفرق بين and و or

📝 مثال 1: الحقيبة الصديقة للبيئة

💡 المطلوب: تحصل على الحقيبة لو استخدمت 3000 نقطة أو أكثر و جاء معك شخصان.
📝 محرر الأكواد eco_bag.py
Python
1234
people = 2 points = 3500 if people >= 2 and points >= 3000: print("Get an eco bag")
💡 الشرطين لازم يتحققوا
— اضغط Run عشان تشوف الناتج في الـ console —

📝 مثال 2: عرض الوجبة العائلية

💡 المطلوب: خصم 30% لو العمر 12 أو أقل أو 65 أو أكثر.
📝 محرر الأكواد age_offer.py
Python
123
age = 15 if age <= 12 or age >= 65: print("30% off")
💡 15 مش 12 أو أقل ولا 65 أو أكثر
— اضغط Run عشان تشوف الناتج في الـ console —
✨ اللي حصل: age = 15 — الشرطين غلط — فمفيش حاجة اطبع.
✏️
جرب بنفسك

غيّر age لـ 10 — هتظهر "30% off" (الشرط الأول صح). جرّب 70 — هتظهر (الشرط التاني صح).

💻

جرّب الكود بنفسك في المحرر

افتح محرر الأكواد التفاعلي واكتب ونفّذ برامجك بنفسك

🚀 افتح محرر الأكواد https://byte-lab.online/#/playground