ورقاتورقات تعليمية
تسجيل الدخولإنشاء حساب
درس

شرح درس المعاملات الشرطية والمعاملات المنطقية في بايثون ثاني متوسط الفصل الأول

المقارنة في بايثون تنتج دائمًا قيمة منطقية واحدة، إما ⁦True⁩ وإما ⁦False⁩، ويمكن ربط عدة مقارنات معًا بالمعاملات المنطقية ⁦and⁩ و⁦or⁩ و⁦not⁩.

المرحلة
المتوسطة
المادة
المهارات الرقمية
وقت القراءة
15 دقائق
الاختبار
متاح

🎯أهداف الدرس

  • يوضح معنى النوع المنطقي ⁦True⁩ و⁦False⁩.
  • يستخدم معاملات المقارنة في كتابة تعبيرات صحيحة بلغة بايثون.
  • يميّز بين ⁦=⁩ للإسناد و⁦==⁩ للمقارنة.
  • يطبّق المعاملات المنطقية ⁦and⁩ و⁦or⁩ و⁦not⁩ ويقرأ جداول الصواب.

💡المفهوم الأساسي

المقارنة في بايثون تنتج دائمًا قيمة منطقية واحدة، إما ⁦True⁩ وإما ⁦False⁩، ويمكن ربط عدة مقارنات معًا بالمعاملات المنطقية ⁦and⁩ و⁦or⁩ و⁦not⁩.

شرح الدرس

حين يراجع معلمك درجتك يسأل نفسه: هل الدرجة أكبر من الحد الأدنى للنجاح؟ الجواب إما «نعم» وإما «لا». وبايثون تفعل الشيء نفسه، فتجيب عن كل مقارنة بإحدى كلمتين فقط.

النوع المنطقي

النوع المنطقي (Boolean) لا يحمل إلا قيمتين: ⁦True⁩ أي صحيح، و⁦False⁩ أي خطأ. يجب كتابتهما بحرف أول كبير كما هما.

«كل مقارنة في بايثون تنتج ⁦True⁩ أو ⁦False⁩»

تذكّر

⁦True⁩ و⁦False⁩ ليسا نصين، ولذلك لا نضع حولهما علامتي اقتباس.

معاملات المقارنة

هذه المعاملات تقارن بين قيمتين:

  • ⁦==⁩: هل القيمتان متساويتان؟
  • ⁦!=⁩: هل القيمتان مختلفتان؟
  • ⁦>⁩: هل الأولى أكبر من الثانية؟
  • ⁦<⁩: هل الأولى أصغر من الثانية؟
  • ⁦>=⁩: هل الأولى أكبر من الثانية أو تساويها؟
  • ⁦<=⁩: هل الأولى أصغر من الثانية أو تساويها؟

لنجرب مع درجة طالب في اختبار:

score = 85
print(score > 50)
print(score == 100)
print(score != 85)
print(score >= 85)
print(score < 60)
print(score <= 90)

وهذا هو ناتج تشغيل البرنامج:

# نص
True
False
False
True
False
True
انتبه

العلامة ⁦=⁩ تعني «ضع القيمة في المتغير»، أما ⁦==⁩ فتعني «هل هما متساويان؟». كتابة ⁦score = 85⁩ تخزّن القيمة، وكتابة ⁦score == 85⁩ تسأل عنها.

المعاملات المنطقية

نستخدمها لدمج أكثر من مقارنة في سؤال واحد:

  • and: تكون النتيجة ⁦True⁩ إذا تحققت المقارنتان معًا.
  • or: تكون النتيجة ⁦True⁩ إذا تحققت إحداهما على الأقل.
  • not: تعكس القيمة، فتحوّل ⁦True⁩ إلى ⁦False⁩ والعكس.

مثال: طالب عمره ١٤ سنة ومعه بطاقة دخول إلى معرض الكتاب:

age = 14
has_card = True
print(age >= 12 and has_card)
print(age < 12 or has_card)
print(not has_card)

وناتجه:

# نص
True
True
False

جداول الصواب

جدول ⁦and⁩: لا تكون النتيجة ⁦True⁩ إلا إذا كان الطرفان ⁦True⁩. وجدول ⁦or⁩: لا تكون النتيجة ⁦False⁩ إلا إذا كان الطرفان ⁦False⁩.

  • True and True: النتيجة ⁦True⁩.
  • True and False: النتيجة ⁦False⁩.
  • False and False: النتيجة ⁦False⁩.
  • True or False: النتيجة ⁦True⁩.
  • False or False: النتيجة ⁦False⁩.
فائدة

ابدأ بحل كل مقارنة وحدها، ثم اجمع النتائج بالمعامل المنطقي.

مقارنة من إدخال المستخدم

الدالة ⁦input()⁩ تعيد نصًّا دائمًا، لذلك نحوّله إلى عدد بـ⁦int()⁩ قبل المقارنة:

grade = int(input("أدخل درجتك: "))
print("هل نجحت؟", grade >= 50)

إذا أدخل الطالب ٧٢ فسيطبع البرنامج: هل نجحت؟ True

نشاط تعليمي

التطبيق الأول

افترض أن ⁦x = 10⁩. اكتب ناتج كل تعبير: ⁦x > 3⁩ و⁦x == 5⁩ و⁦x != 5⁩.

الإجابة

⁦True⁩ ثم ⁦False⁩ ثم ⁦True⁩.

الهدف

أن يقرأ الطالب نتيجة معاملات المقارنة.

التدريب الثاني

افترض أن ⁦a = True⁩ و⁦b = False⁩. ما ناتج ⁦a and b⁩ و⁦a or b⁩ و⁦not b⁩؟

الإجابة

⁦False⁩ ثم ⁦True⁩ ثم ⁦True⁩.

الهدف

أن يطبّق الطالب المعاملات المنطقية.

المسألة الثالثة

اكتب تعبيرًا يكون ⁦True⁩ إذا كانت درجة الطالب ⁦mark⁩ بين ٦٠ و١٠٠ بالتضمين.

الإجابة

⁦mark >= 60 and mark <= 100⁩.

الهدف

أن يدمج الطالب مقارنتين بـ⁦and⁩.

ملاحظات مهمة

  1. 1ناتج المقارنة قيمة منطقية: ⁦True⁩ أو ⁦False⁩.
  2. 2علامة ⁦=⁩ للإسناد، وعلامة ⁦==⁩ للمقارنة.
  3. 3⁦and⁩ تحتاج تحقق الشرطين، و⁦or⁩ يكفيها تحقق أحدهما.
  4. 4نحوّل الإدخال بـ⁦int()⁩ قبل مقارنته بعدد.

أخطاء شائعة

  • ✗ خطأكتابة ⁦if x = 5⁩ أو ⁦print(x = 5)⁩ عند قصد المقارنة.
    ✓ الصواب: نستخدم ⁦==⁩ للمقارنة، مثل ⁦print(x == 5)⁩.
  • ✗ خطأكتابة ⁦true⁩ أو ⁦false⁩ بحرف صغير.
    ✓ الصواب: نكتبهما ⁦True⁩ و⁦False⁩ بحرف أول كبير.
+عرض جميع الأخطاء (3) ←إخفاء الأخطاء الإضافية
  • ✗ خطأمقارنة نص قادم من ⁦input()⁩ بعدد دون تحويل.
    ✓ الصواب: نستخدم ⁦int()⁩ أولًا.

ملخص الدرس

  • النوع المنطقي له قيمتان فقط: ⁦True⁩ و⁦False⁩.
  • معاملات المقارنة هي ⁦==⁩ و⁦!=⁩ و⁦>⁩ و⁦<⁩ و⁦>=⁩ و⁦<=⁩.
  • ⁦=⁩ تخزّن قيمة و⁦==⁩ تقارن.
  • ⁦and⁩ و⁦or⁩ و⁦not⁩ تجمع المقارنات أو تعكسها.

هل أتقنت الدرس؟اختبر نفسك من خلال اختبار قصير من عدة أسئلة.

حزمة الدرس