الجمل الشرطية
أنواع الجمل الشرطية في بايثون (Python)
أولًا: الجملة الشرطية ( if (if statement
تُكتَب الصيغة العامة للجملة الشرطية ( if ) على النحو الآتي:
if condition:
statements1
حيث:
If : كلمة محجوزة في لغة البرمجة بايثون(Python)
condition : الشرط (تعبير منطقي).
statements : أوامر برمجية تُنفَّذ إذا كان الشرط صحيحًا (تحقُّق الشرط).
(:) : علامة يجب أنْ توضَع بعد الشرط ( condition ) حتّى يُنفَّذ البرنامج.
مثال:
يطبع البرنامج الآتي عبارة " y is greater than x " إذا كانت قيمة المُتغيِّر ( y) أكبر من قيمة المُتغيِّر (x)
x = 3
y = 20
if y > x: print("y is greater than x")
عند تشغيل البرنامج، ستظهر النتيجة الآتية على شاشة جهاز الحاسوب:
يُمكِن كتابة الجملة الشرطية السابقة بصورة مختصرة كما يأتي:
x = 3
y = 20
if y > x: print("y is greater than x")
- يجب أنْ تكون المسافات البادئة صحيحة؛ لكي يعمل المقطع البرمجي (الكود) بصورة صحيحة في لغة البرمجة بايثون (Python)
- أتأكَّد دائمًا أنَّ الأسطر التي تتبع الشرط مثل السطر الذي يحتوي على كلمة ( print ) تحوي مسافة بادئة (أربع مسافات أو Tab واحدة).
ثانيًا: الجملة الشرطية (if else)
تُكتَب الصيغة العامة للجملة الشرطية ( if else ) على النحو الآتي:
if condition:
statements1
else:
statements2
حيث:
if, else : كلمتان محجوزتان في لغة البرمجة بايثون (Python)
statements1 : أوامر برمجية تُنفَّذ إذا كان الشرط صحيحًا (تحقُّق الشرط).
statements2 : أوامر برمجية تُنفَّذ إذا لم يكن الشرط صحيحًا (عدم تحقُّق الشرط).
(:): علامة يجب أنْ توضع بعد الشرط ( condition ) و بعد جملة .else
مثال:
يطبع البرنامج الآتي عبارة " y is less than x " إذا كانت قيمة المُتغيِّر ( y) أقل من قيمة المُتغيِّر (x)
ويطبع البرنامج عبارة " x is less than y " إذا كانت قيمة المُتغيِّر ( x) أقل من قيمة المُتغيِّر (y)
x = 80
y = 100
if y < x:
print("y is less than x")
else:
print("x is less than y")
عند تشغيل البرنامج، ستظهر النتيجة الآتية:
يُمكِن كتابة الجملة الشرطية السابقة بصورة مختصرة كما يأتي:
x = 80
y= 100
print("y is less than x") if y < x else print("x is less than y")
ثالثًا: الجملة الشرطية (if elif)
تُكتَب الصيغة العامة للجملة الشرطية ( if elif ) على النحو الآتي:
if condition1:
statements1
elif condition2:
statements2
حيث:
if, elif : كلمتان محجوزتان في لغة البرمجة بايثون (Python)
statements1 : أوامر برمجية تُنفَّذ إذا تحقَّق الشرط(condition1)
statements2 : أوامر برمجية تُنفَّذ إذا تحقَّق الشرط (condition2)
مثال:
يطبع البرنامج الآتي عبارة " y is greater than x " إذا كانت قيمة المُتغيِّر ( y) أكبر من قيمة المُتغيِّر (x)
ويطبع البرنامج عبارة " x equals y " إذا كانت قيمة المُتغيِّرَ ) x( تساوي قيمة المُتغيِّر (y)
x = 20
y = 20
if y > x:
print('y is greater than x')
elif x == y:
print('x equals y')
عند تشغيل البرنامج، ستظهر النتيجة الآتية:
- أكتب جملًًا برمجية بلغة البرمجة بايثون ( Python ) لحساب قيمة المُتغيِّر ( z) وَفقًا لكل معادلة ممّا يأتي وطباعته:
z = x2 * y , x >= 5
z = x * (x + y) , x == 5
رابعًا: الجملة الشرطية (if elif else)
تُكتَب الصيغة العامة للجملة الشرطية ( if elif else ) على النحو الآتي:
if condition1:
statements1
elif condition2:
statements2
else:
statements3
حيث:
if, else, elif : كلمات محجوزة في لغة البرمجة بايثون (Python)
statements1 : أوامر برمجية تُنفَّذ إذا تحقَّق الشرط(condition1)
statements2 : أوامر برمجية تُنفَّذ إذا تحقَّق الشرط (condition2)
statements3 : أوامر برمجية تُنفَّذ إذا لم يتحقَّق أيٌّ من الشرطين (condition2, condition1)
مثال:
يطبع البرنامج الآتي عبارة " y is greater than x " إذا كانت قيمة المُتغيِّر ( y) أكبر من قيمة المُتغيِّر (x)
ويطبع البرنامج عبارة " x equals y " إذا كانت قيمة المُتغيِّر ( x) تساوي قيمة المُتغيِّر ( y)،
ويطبع البرنامج عبارة " x is greater than y " إذا كانت قيمة المُتغيِّر ( y)أصغر من قيمة المُتغيِّر (x)
x = 50
y = 25
if y > x:
print("y is greater than x")
elif y == x:
print("x equals y")
else:
print("x is greater than y")
عند تشغيل البرنامج، ستظهر النتيجة الآتية:
المُعامِلات المنطقية (Logical Operators):
يُستعمَل المُعامِل المنطقي(and) والمُعامِل المنطقي ( or ) لربط التعابير المنطقية البسيطة، وتكوين جمل منطقية مُركَّبة، في حين يُستعمَل المُعامِل المنطقي ( not ) لنفي التعابير المنطقية.
1. المُعامِل المنطقي(and):
قد يتوقَّف تنفيذ أمر برمجي مُعيَّن في البرنامج على تحقُّق مجموعة من الشروط مُجتمِعةً.
مثال:
يراد طباعة كلمة " Excellent " إذا كان مُعدَّل الطالب/ الطالبة أكبر من أو يساوي ( 90 ) وأقل من أو يساوي ( 100 ).
الحَلُّ:
يجب استعمال المُعامِل المنطقي ) and ( للدلالة على تحقُّق الشرطين معًا، وتُكتَب الأوامر البرمجية على النحو الآتي:
if Avg >= 90 and Avg <=100:
print("Excellent")
عند تشغيل البرنامج، ستظهر النتيجة الآتية:
2. المُعامِل المنطقي (or)
قد يتوقَّف تنفيذ أمر مُعيَّن في البرنامج على تحقُّق شرط من مجموعة شروط.
مثال:
يراد طباعة قيمة المُتغيِّر( x) إذا كانت قيمة هذا المُتغيِّر تساوي ( 1( أو ) 2).
الحَلُّ:
يجب استعمال المُعامِل المنطقي ( or ) للدلالة على تنفيذ جملة الطباعة في حال تحقَّق أحد الشرطين، وتُكتَب الأوامر البرمجية على النحو الآتي:
x = 1
if x == 1 or x == 2:
print('you selected a valid number')
عند تشغيل البرنامج، ستظهر النتيجة الآتية:
3. المُعامِل المنطقي (not):
قد يتوقَّف تنفيذ أمر في البرنامج على عدم تحقُّق شرط مُعيَّن.
مثال:
يراد طباعة كلمة " Fail " إذا لم يُحقِّق الطالب/ الطالبة شرط النجاح (Avg >= 50)
الحَلُّ:
يجب استعمال المُعامِل المنطقي ( not ) للدلالة على عدم تحقُّق الشرط، وتُكتَب الأوامر البرمجية على النحو الآتي:
Avg = 49
if not Avg >= 50:
print("Fail")
عند تشغيل البرنامج، ستظهر النتيجة الآتية:
الجملة الشرطية المُركَّبة (Nested Conditional Statements)
تُوفِّر لغة البرمجة بايثون ( Python ) إمكانية كتابة جمل شرطية مُركَّبة (مُتداخِلة)؛ أيْ وضع جملة شرطية( if ) داخل جملة شرطية (if ) أُخرى.
مثال:
يطبع البرنامج الآتي عبارة " Above ten " إذا كانت قيمة ( x) أكبر من(10 )، ثمَّ يتحقَّق إذا كانت قيمة (x) ( أكبر من ) (60 ). فيطبع البرنامج، إضافة إلى العبارة السابقة، عبارة " and also above 60 " إذا كانت قيمة (x)( أكبر من ) (60)، و يطبع
عبارة " but not above 60 " إذا كانت قيمة ( x) ( أقل من ) (60 ).
x = 68
if x > 10:
print("Above ten,")
if x > 60:
print("and also above 60.")
else:
print("but not above 60.")
عند تشغيل البرنامج، ستظهر النتيجة الآتية:
مثال:
يُستخدَم البرنامج الآتي في التحقُّق إذا كانت قيمة المُتغيِّر( y) تقبل القسمة على ( 3)، وتقبل القسمة على (2)، أو تقبل القسمة على أحدهما ، أو لا تقبل القسمة على أي منهما. ثمَّ يطبع البرنامج العبارة الدالَّة على ذلك.
y = 9
if y %2==0:
if y %3==0:
print("divisible by 3 and 2")
else:
print("divisible by 2, but not divisible by 3")
else:
if y %3==0:
print("divisible by 3, but not divisible by 2")
else:
print("not divisible by 2 and not divisible by 3")
عند تشغيل البرنامج، ستظهر النتيجة الآتية:
أتتبَّع تنفيذ البرنامج الآتي في بيئة بايثون ( Python )، بوجود جملة ( pass ) تارة، وعدم وجودها تارة أُخرى.
x = 4
y = 2
if x > y:
pass
![]() |
![]() |
- اكتشاف الأخطاء في المقطع البرمجي بلغة البرمجة بايثون (Python)
حلل المقطع البرمجي الآتي، وأكتشِف الأخطاء الواردة فيه وأعمل على تصحيح هذه الأخطاء، ثمَّ أُنفِّذ المقطع البرمجي بعد تصحيحه.
grade = input("Enter your grade: ")
if grade >= 85
print("A")
elif grade >= 75
print("B")
elif grade >= 65:
print("C")
else
print("F")
':' نحتاج بعد جملة الشرط if في جملة
نحتاج لفراغ قبل الجملة print
نحتاج لفراغ قبل الجملة print else ^ SyntaxError: expected ':' ':' نحتاج بعد جملة الشرط else في جملة |
![]() |