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

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

الجملة الشرطية تجعل البرنامج ينفّذ أوامر معينة فقط إذا تحقق شرط، وتنفّذ ⁦else⁩ أوامر بديلة إذا لم يتحقق.

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

🎯أهداف الدرس

  • يكتب جملة ⁦if⁩ بصيغتها الصحيحة مع النقطتين والمسافة البادئة.
  • يستخدم ⁦if-else⁩ لاختيار أحد مسارين في البرنامج.
  • يطبّق أمثلة النجاح والرسوب والعدد الزوجي والفردي باستخدام ⁦%⁩.
  • يكتشف أخطاء المسافة البادئة ويصلحها.

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

الجملة الشرطية تجعل البرنامج ينفّذ أوامر معينة فقط إذا تحقق شرط، وتنفّذ ⁦else⁩ أوامر بديلة إذا لم يتحقق.

شرح الدرس

في المدرسة تعرف أن من حصل على الدرجة المطلوبة ينجح، ومن لم يحصل عليها يعيد المحاولة. البرنامج يحتاج إلى هذا النوع من التفكير ليتصرف بحسب الحالة، وتفعل ذلك الجمل الشرطية.

جملة if

تتكون جملة ⁦if⁩ من الكلمة ⁦if⁩ ثم الشرط ثم نقطتين رأسيتين ⁦:⁩، وتأتي بعدها الأوامر التي تُنفّذ عند تحقق الشرط، وتُكتب داخلها بمسافة بادئة قدرها ٤ مسافات.

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

إذا أدخل الطالب ٧٠ طبع البرنامج: ناجح. وإذا أدخل ٤٠ فلا يطبع شيئًا لأن الشرط لم يتحقق.

«الشرط ينتج ⁦True⁩ أو ⁦False⁩، والأوامر المزاحة تُنفّذ عند ⁦True⁩ فقط»

جملة if-else

نستخدم ⁦else⁩ لنحدد ما يجري عند عدم تحقق الشرط. ولا يكتب بعد ⁦else⁩ شرط، بل نقطتان فقط:

grade = int(input("أدخل درجتك: "))
if grade >= 50:
    print("ناجح")
else:
    print("راسب")
print("انتهى البرنامج")

إدخال ٧٠ يطبع: ناجح ثم انتهى البرنامج. وإدخال ٤٠ يطبع: راسب ثم انتهى البرنامج. السطر الأخير غير مزاح، فيُنفّذ في الحالتين.

العدد الزوجي والفردي

العدد الزوجي ينقسم على ٢ بلا باقي. المعامل ⁦%⁩ يعطينا باقي القسمة، فإذا كان باقي قسمة العدد على ٢ يساوي صفرًا فالعدد زوجي:

n = int(input("أدخل عددًا: "))
if n % 2 == 0:
    print("العدد زوجي")
else:
    print("العدد فردي")

عند إدخال ٧ يطبع: العدد فردي. وعند إدخال ١٢ يطبع: العدد زوجي.

تذكّر

نحوّل الإدخال بـ⁦int()⁩ قبل المقارنة، لأن ⁦input()⁩ تعيد نصًّا.

أخطاء المسافة البادئة

بايثون تعتمد على المسافة البادئة لتعرف أي الأوامر تتبع الشرط. إذا نسيتها ظهرت رسالة خطأ مثل ⁦IndentationError⁩، وإذا نسيت النقطتين ظهر ⁦SyntaxError⁩.

  • أوامر الشرط: تُزاح ٤ مسافات إلى اليمين.
  • أوامر ⁦else⁩: تُزاح بالمقدار نفسه.
  • الأمر خارج الشرط: يبدأ من بداية السطر بلا إزاحة.
انتبه

استخدم المسافات نفسها في كل الأسطر داخل الكتلة الواحدة، ولا تخلط بينها وبين مفتاح Tab.

نشاط تعليمي

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

اكتب برنامجًا يطلب من المستخدم درجة ثم يطبع «ناجح» إذا كانت الدرجة ٥٠ فأكثر، ويطبع «راسب» في غير ذلك.

الإجابة

نستخدم ⁦if grade >= 50:⁩ ثم ⁦print("ناجح")⁩ ثم ⁦else:⁩ ثم ⁦print("راسب")⁩.

الهدف

أن يكتب الطالب جملة ⁦if-else⁩ صحيحة.

المثال الثاني

ما الذي يطبعه برنامج الزوجي والفردي عند إدخال ٩؟

الإجابة

يطبع «العدد فردي» لأن باقي قسمة ٩ على ٢ يساوي واحدًا.

الهدف

أن يتتبع الطالب البرنامج بالمعامل ⁦%⁩.

الموقف الثالث

كتب طالب ⁦if grade >= 50⁩ بلا نقطتين، فما النتيجة؟

الإجابة

يظهر ⁦SyntaxError⁩ ونضيف النقطتين في آخر السطر.

الهدف

أن يكتشف الطالب أخطاء الصياغة.

ملاحظات مهمة

  1. 1بعد الشرط و⁦else⁩ تأتي نقطتان ⁦:⁩ دائمًا.
  2. 2المسافة البادئة ٤ مسافات تحدد الأوامر التابعة للشرط.
  3. 3⁦else⁩ لا يحتاج إلى شرط.
  4. 4⁦%⁩ يعطي باقي القسمة.

أخطاء شائعة

  • ✗ خطأنسيان النقطتين بعد ⁦if⁩ أو ⁦else⁩.
    ✓ الصواب: نكتب ⁦if شرط:⁩ و⁦else:⁩ مع النقطتين.
  • ✗ خطأعدم إزاحة الأمر تحت الشرط.
    ✓ الصواب: نزيحه ٤ مسافات.
+عرض جميع الأخطاء (3) ←إخفاء الأخطاء الإضافية
  • ✗ خطأكتابة ⁦if x = 5:⁩ للمقارنة.
    ✓ الصواب: نكتب ⁦if x == 5:⁩.

ملخص الدرس

  • ⁦if⁩ تنفّذ أوامرها عند تحقق الشرط.
  • ⁦else⁩ تنفّذ أوامرها عند عدم تحقق الشرط.
  • العدد زوجي إذا كان ⁦n % 2 == 0⁩.
  • المسافة البادئة والنقطتان ضروريتان في بايثون.

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

حزمة الدرس