جمل التحكم بالمتغيرات (جمل الشرطية)
كنت أود أن ندرس السلاسل الحرفية أولا و لكن لكي نستفيد أكثر قررت أن ندرس الجمل الشرطية لأنها سهلة ثم نطبقها أكثر مع السلاسل الحرفية و القوائم .
أولا يجب عليك أن تعلم أن عماد البرمجة بأي لغة هي الجمل الشرطية و الحلقات و السلاسل الحرفية بمختلف أنواعها و المؤشرات(في اللغات المنخفضة المستوى) و إن احتراف البرمجة لا يؤتى إلا بإتقان هذه الأمور و فهمها جيدا لأن كل شيئ يأتي بعد هذه الأمور سيعتمد عليها سواء في البرمجة الكينوية (ِClass ,Method) أو في الواجهات الرسومية لدى إحذر أخي القارئ فطريق الإحتلراف يبدئ من هنا و لا تستصغر أي شيئ لأنك ستحتاجه فيما بعد .
نحن نعلم أن اللغة العربية تحتوي على جمل الشرط و أن هذه الجمل تتكون من قسمين جملة الشرط وجملة جواب الشرط , كذلك الحال مع لغات البرمجة بحيث أننا نقوم بكتابة الشرط ثم يليه جواب الشرط أو بالاحرى الأوامر التي سينفدها البرنامج عند تحقق الشرط
كود PHP:
if< condition> الشرط
< bloc d'instruction'>
جواب الشرط
في لغة البايثون تكون جملة الشرط على النحو التالي
كود PHP:
a=10
if(a>10):
..........
فجملة الشرط تبتدأ دائما بعبارة IF (إذا) ومابين القوسين يعبر عن الشرط ثم النقطتين : لـ الدلالة على أن ما يتبع النقطتين عبارة عن جواب الشرط أو لكي نبين للمفسر أن كل ما يأتي بعد النقتطين ينفد إذا تحقق الشرط.
كود PHP:
a=1200
if(a<2000):
print"a <2000"
عند تحقق الشرط قام المفسر بتنفيد جواب الشرط و هو طباعة الرسالة.
ملاحظة هامة : يجب مراعات المسافة التي يتيحها لك البرنامج بعد جملة If لا تعد لأول السطر بل أكتب الأوامر في هذه المسافة فكل ما سيكب في هذه المسافة يعتبره المفسر تابع لجملة if .
الآن لو كان لدينا حالتين لشرط واحد يتوجب علينا إستعمال عبارة ثمسث التي تعتبر أخت جملة if
بهذا سنكون قادرين على التعامل مع أكثر من حالة مع نفس الشرط , لا يشترط كما تلاحظون وضع الأقواس في جملة if ولكن من الأحسن وضعهما لكي تزيد في وضوح الكود.
وهذه بعض المعاملات التي سنحتاج إليها ل التعامل مع المتغيرات بواسطة الجمل الشرطية
كود PHP:
x==y المساوات
x!=y عدم المساوات
x>y
x<y
x>=y
أكبر أو يساوي
x<=y
أقل أو يساوي
مثال
إكتشاف العدد زوجي أو فردي
كود PHP:
a=7
if(a%2==0):
print" a est pair" # عدد زوجي#
else :
print " a est impair"
#عدد فرد#
أخذ المعلومات من المستعمل :
حتى الآن لم نعرف كيف نطلب من المستعمل إدخال معلومات أو أعداد وهذا ما سنعرفه الآن
يوجد عبارتين أساسيتين في لغة البايثون لإدخال المعلومات هما Input() و raw_input() و كلهما له نفس العمل تقريبا ولكن يوجد إختلاف طفيف بينهما سنعرفه في الدروس المتقدمة إن شاء الله .
و لكي نستطيع إستعمالهما بصورة ديناميكية يجب علينا إستعمال الفسر Py******er و من الآن فصاعدا سنستعمل هذا المفسر لأنه أحسن من المفسر الرسمي .
بما أننا أصبحنا الآن نعرف كيف نتعامل مع المستخدم سنواصل الجمل الشرطية ونطبق بعض الأمثلة عليها
سنقوم في المثال التالي بـ الطلب من المستخد إدخال عددين ثم ندرس حالات العددين
كود PHP:
a=input('number 1 :')
b=input(' number 2 :')
if a>b:
print a," > ",b
elif a<b:
print a," < ",b
else:
print a," = ",b
و في التالي سنقوم بالطلب من المستخدم بإدخال عدد ثم يكتشف البرنامج إن كان العدد زوجي أو فردي
كود PHP:
a=raw_input( 'Introdiusez un nombre :')
if (int(a) % 2==0 ):
print a," est paire "
else:
print a," est impaire "
قمنا بالكتابة التالية
كود PHP:
int(a)
حتى يحول المفسر قيمة a إلى عدد صحيح integer بدون فاصلة .
ثم قسمنا هذ العدد على إثنين فإذا كان الناتج صفر فالعدد a زوجي و إذا كان الناتج مختلف عن الصفر فالعدد فردي.
الآن نريد أن يكون العدد المدخل من طرف المستعمل أقل من مئة فإذا كان أكبر من مئة نطبع للمستخدم رسالة خطأ
كود PHP:
a=raw_input( 'Introdiusez un nombre <100 :')
if (int(a) % 2==0 and int(a)<100 ):
print a," est paire "
elif a>100:
print a," Error "
else:
print a,"est impaire"
المعامل and يعني "و" و المعامل or يعني "أو" و المعامل not يعني "ليس" المعامل in يعني "في"
أمثلة
في المثال التالي سيقوم البرنامج بالطلب من المستخدم إدخال رقم بين 0 و 100 فإذا أدخل المستخدم رقم أكبر من 100 أو أقل من 0 سيقوم البرنامج بطباعة رسالة خطأ
كود PHP:
a=int(raw_input('enter any number !!(0) or >100 '))
if( a<0 or a>100):
print "pleas enter a nember between 1 and 99"
elif (a>0 and a<100):
print "good"
else:
print"Error"
في المثال التالي يقوم البرنامج بالبحث عن حرف s في إسم المستخدم
كود PHP:
name =raw_input('your name pleas : ')
if 's' in name :
print " your name contain (s) char )"
else:
print" can't find char s in your name "
كما اننا نستطيع إستعمال in في الأرقام كما هو موضح في المثال التالي
كود PHP:
number =raw_input('enter a number : ')
if '0' in number:
print " the number contain 0 )"
else:
print" the number dos't contain 0 "
و في التالي مثال يقوم بالطلب من المستخدم إدخال مبلغ مالي ثم يقوم البرنامج بحساب القيم المضافة TVA لهذا المبلغ علما أنه إذا كان المبلغ أقل من 1000 فليس عليه قيمة مضافة و إذا كان المبلغ أكبر من 1000 سيطلب البرنامج من المستخدم إدخال قيمة الرسم TVA ثم يحسب القيمة
كود PHP:
Sum =int(raw_input('Sum : '))
if Sum<1000:
print "No TVA "
else:
p =float(raw_input('TVA : ' ))
TVA=(Sum*p)/100
print "TVA : ",TVA
علمنا بأن قيمة الرسم تكون بالفاصلة في أغلب الأحيان فقمنا بتحويل العدد المدخل من طرف المستخدم إلى نوع float حتى يتمكن البرنامج من التعامل مع العدد المدخل
كود PHP:
p =float(raw_input('TVA : ' ))
إنتهينا الآن من الجمل الشرطية و أظن أن الأكثرية فهمتها لأنها سهلة جدا و لكنها مازالت تتبعنا في مشوارنا الطويل إن شاء الله و سنطبق أمثلة عليها في الدروس المقبلة
سننتقل الآن إلى الحلقات التكرارية و هي الأخرى سهلة جدا و لن تأخذ منا الكثير من الوقت و سنطبق الجمل الشرطية عليها حتى تعم الفائدة .
تم بحمد الله