المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : الامر if بصورة الثلاثة الفصل الثاني الشروط والقرارات



س ا يوسف
26-03-2009, 11:58 PM
معاملات المقارنة
اكبر من <
اكبر من او تساوي =<
اصغر من <
اصغر من او تساوي =>
تساوي =
لا تساوي <>

تستخدم تلك المعاملات في صياغة علاقة بين كميتين
وصياغة العلاقة بين كميتين تسمى التعبير الشرطي
وللتعبير الشرطي قيمة او ناتج للعلاقة
تتوقف هذه القيمة على على صحة العلاقة او عدم صحتها
فاذا كانت العلاقة صحيحة تكون قيمة التعبير الشرطي صحيح true
واذا كانت العلاقة خاطئة تكون قيمة التعبير الشرطي خطأ false

نفرض ان A=50 و B=60
ممكن نصيغ علاقة بين الكميتين A وB
نعم مثل A>B خاطئة لان A=50 ليست اكبر من B=60
B>A صحيحة لان B=60 اكبر من A=50
A=B خاطئة لان A=50 لا تساوي B=60
A>=B خاطئة لان A=50 ليست اكبر من وكذلك لا تساوي B=60
وهكذا

كل علاقة سابقة تسمي تعبير شرطي هذا التعبير له قيمة اما True او False

نستنتج ان التعبير الشرطي له قيمتان وبالتالي يكون هناك قراران ودائما نسأل نفسنا لو كان التعبير صحيح حنعمل ايه ولو كان التعبير خطأ حنعمل ايه
دا اسمه اتخاذ القرارات المترتبة على شرط
في حالة اردنا فعل شئ في حالة True وتنفيذ فعل شئ اخر في حالة False (نريد تنفيذ احد البديلين ) نستخدم
IF …….. Then …… Else
وفي حالة اردنا فعل شئ واحد في حالة Ture وعدم فعل اي شئ في حالة الخطأ( نريد تنفيذ بديل واحد فقط ) نستخدم
IF ……………. Then

واذا اردنا تنفيذ فعل شئ في حالة Ture وتنفيذ (احد بديلين –اختيارين- ) في حالة False ( توضيح ارسل احدنا اخوه لشراء سندوتش لحمة لو وجدت اللحمة اشتري وان لم تجد اللحمة ووجد جبنة اشتري جبنة ولو لم تجد الجنبة اشتري فول ) نستخدم
IF …….. Then …… ElseIF ….else

وفي الحالات الثلاثة تنتهي الجملة ب End IF


ازاي وامتى نستخدم واحدة من التلاته

نشوف البدائل (كام قرار ) هو اللي يحدد

نكتب If في اول السطر يسار ثم then في اخر السطر وبينهما التعبير الشرطي
اذا كان بديل واحد true يكتب في السطر الثاني
ثم EndIF في السطر الثالث

اذا كان بديلين
يكتب قرار True في السطر الثاني
ثم Else في السطر الثالث ثم قرار False في الرابع ثم EndIF في السطر الخامس

اذا كان اكثر من بديل
يكتب قرار True في السطر الثاني
ثم ElseIF في السطر الثالث ثم التعبير الشرطي الثاني ثم then
ثم يكتب قرار True للخطأ في الرابع
ثم Else في السطر الخامس
قرار False في السادس ثم EndIF في السطر السابع

طبعا احنا تهنا بس الامثلة حتوضح


مثال على بديل واحد
اذا كان السن اكبر من 16 سنة يحق للشخص عمل بطاقة رقم قومي

دا بديل واحد فقط يحق عمل بطاقة رقم قومي
ازاي نعمل التعبير الشرطي
العلامة هي < اكبر من
يسار العلامة السن ويمين العلامة 16
قرار Ture هو البديل يحق عمل بطاقة
الاكواد


IF Age > 16 then
("يحق استخراج بطاقة" )MsgBox
EndIF


مثال بديلين
اكتب اكواد برنامج لحساب الراتب الاسبوغي لموظف بشرط لو كانت ساعات العمل اقل من او تساوي 40 فان اجر الساعة يكون 5 جنيهات اما اذا كانت اكثر من 40 فان الراتب يحسب 5 جنية في الساعى لاول 40 ساعة و 10 جنيه لكل ساعة لما يزيد عن 40


دا بديلين
الاول (فان اجر الساعة يكون 5 جنيهات ) اي الراتب = 5 * عدد الساعات
الثاني (اما اذا كانت اكثر من 40 فان الراتب يحسب 5 جنية في الساعى لاول 40 ساعة و 10 جنيه لكل ساعة لما يزيد عن 40 ) اي الراتب = 5*40 +10( عدد الساعات – 40)

ازاي نعمل التعبير الشرطي
العلامة هي => اقل من او يساوي
يسار العلامة ساعات العمل ويمين العلامة 40
ازاي نحدد Ture و False
البديل الاول هو Ture والثاني هو False
نكتب الاكواد


IF houre <= 40 then
Salary = 5 * houre
Else
Salary = 5 * 40 + 10*( houre – 40 )
EndIF



مثال اكثر من بديل
اذا كانت درجة طالب في الامتحان اقل من 5 يكون التقدير ضعيف وان كانت اكبر من او تساوي 5 واقل من 8 يكون التقدير متوسط وان كانت اكبر من او تساوي 8 يكون التقدير ممتاز
دي 3 بدائل يعني نستخدم ElseIF
البديل الاول يكون التقدير ضعيف
البديل الثاني يكون التقدير متوسط
البديل الثالث يكون التقدير ممتاز
التعبير الشرطي
العلامة > اقل من
يسار العلامة درجة الطالب ويمين العلامة 5
القرار Ture هو البديل الاول
التعبير الشرطي الثاني
العلامة > اقل من
يسار العلامة درجة الطالب ويمين العلامة 8
القرار Ture هو البديل الثاني
القرار False هو البديل الثالث



IF degree < 5 then
("التقدير ضعيف")MsgBox
ElseIF degree < 8 then
("التقدير متوسط")MsgBox
Else
("التقدير ممتاز")MsgBox
EndIF

شمس بياض
27-03-2009, 04:57 PM
جزاكم الله خيرا

وزادكم علما

س ا يوسف
27-03-2009, 09:38 PM
جزاكم الله خيرا

وزادكم علما

شكرا لمرورك