مواضيع ذات صلة
سوف نتعرف في ھذا الموضوع على جمل الشرط التي لا نستطیع الاستغناء عنھا مطلقا في البرمجة إلیك توضیح لجمل الشرط ھي جمل تستخدم لاتخاذ قرارات أو تنفیذ كود برمجي معین عند حدوث أحد الشروط التي يضعھا المبرمج عند كتابته لجملة الشرط تستخدم في ھذه الحالة جمل الشرط والتي If وسوف نتعلم الصيغ العامة لكتابة الجمل الشرطية على اشكالها النتعددة
الصيغة الاولى
ھذه ھي ابسط صورة لجملة بالطريقة If والتي تعني فقم بالاتي في حال تحقق الشرط يمكننا تجربة جملة Then الشرط وكلمة الآتیة في المثال الأتي وھو يقوم على التحقق مما قد كتبه المستخدم فإذا كان ما كتبه ھو 2013 فیقوم بعرض رسالة نقوم أولا بفتح برنامج فیجوال بیسك وإدراج زر أمر واحد ومربع نص ثم نقوم بإضافة الكود الأتي في حدث الضغط على زر الأمر
نقوم بتجربة المثال السابق ونكتب ١٩٩٣ في مربع النص لنلاحظ ظھور الرسالة وعدم ظھورھا في حال
كتابة إي شيء أخر لن تظھر لأننا حددنا شرط ظھور الرسالة السابقة وھو إن تكون القیمة النصیة
المكتوبة في مربع النص = ١٩٩٣ وھذه كانت الصیغة الأولى كما يمكن كتابة ھذه الصیغة بالشكل الأتي
لتقبل إضافة أكثر من أمر في حال تحقق الشرط وھي
الصیغة الثانیة :
أصبحت بأكثر من شرط لإمكانیة إضافة أكثر من If وھذه ھي الصیغة الثانیة نفس السابقة إلا إن جملة في End If أمر في تحقق الشرط نفس الطريقة السابقة إلا إننا ھنا سوف يتحتم علینا إضافة جملة نھاية الجملة لكي يعرف البرنامج أن الجملة انتھت في المكان المحدد لأنھا سوف تصبح بأكثر من سطر ولیس من المعقول إن تمتد لنھاية الإجراء أو الحدث لتجربة الصیغة السابقة يمكننا عمل نفس البرنامج السابق لكن نستخدم ھذه المرة الكود بالصورة الآتیة
لعرض أكثر من رسالة أو تنفیذ أكثر من كود
الشرطیة ألان ننتقل If جرب تشغیل البرنامج ولاحظ تنفیذ أكثر من كود وھذه كانت الصیغة الثانیة لجمل إلى
الصیغة الثالثة:
لو أردنا تنفیذ حديثین مختلفین في كل مره مثلا لو كان ما مكتوب في صندوق النص = 2013 يظھر رسالة ما ولو كانت لم تكن القیمة 2013 نريد تنفیذ كود أخر ما العمل ، العمل بالصیغة الثالثة والتي
تكون كالأتي
كما تلاحظ تكون الصیغة ھي في حال تحقق الشرط قم بالاتي ثم كتابة الكود في سطر جديد ومن ثم وتعني في حال عدم تحقق الشرط ثم سطر جديد والكود في حال لم Else سطر جديد وكتابة كلمة يتحقق الشرط سوف تستوضح الأمور أكثر بالكود الأتي أيضا قم بإضافة مربع نص وزر أمر فقط واكتب الكود
لو جربت البرنامج ألان للاحظت ظھور رسالتین مختلفتین حسب القیمة المدخلة وھذه ھي جملة الصیغة الثالثة وبقت الصیغة الأخیرة
الصیغة الرابعة:
راءت شركة مايكروسوفت انه من غیر الجید انه إذا احتاج المبرمج إن ينفذ اكواد حسب المدخلات المحددة فقط وعرض ناتج لكل إدخال( كمثال عرض رسالة محددة لو كان ما مكتوب في مربع النص = 2013 وعرض رسالة مختلفة أخرى في حال كان 2012 ورسالة مختلفة أخرى لو كان 2011 ) انه من غیر الجید إن يبطر إلى كتابة جملت عديدة لإتمام مھمته سوف أوضح لك بمثال يقوم الكود الأتي بعرض رسالتین مختلفة فقط في حال تحقق احد الشرط وھذه ھي فائدة الصیغة الرابعة
كما يمكننا أيضا إضافة كود في حال عدم تحقق كلا الشرطین بإضافة كلمة والكود وھذا مثال عن ذلك Else وحدھا وسطر جديد :
يمكننا الاستغناء عن الصیغة الأخیرة بجملة القرار Select Case
الصيغة الاولى
Code
If….. الشرط Then الكود في حال تنفذ الشرط
ھذه ھي ابسط صورة لجملة بالطريقة If والتي تعني فقم بالاتي في حال تحقق الشرط يمكننا تجربة جملة Then الشرط وكلمة الآتیة في المثال الأتي وھو يقوم على التحقق مما قد كتبه المستخدم فإذا كان ما كتبه ھو 2013 فیقوم بعرض رسالة نقوم أولا بفتح برنامج فیجوال بیسك وإدراج زر أمر واحد ومربع نص ثم نقوم بإضافة الكود الأتي في حدث الضغط على زر الأمر
Code
Private Sub Command1_Click()
If Text1.Text = "2013" Then MsgBox "This is a simple "
End Sub
If Text1.Text = "2013" Then MsgBox "This is a simple "
End Sub
نقوم بتجربة المثال السابق ونكتب ١٩٩٣ في مربع النص لنلاحظ ظھور الرسالة وعدم ظھورھا في حال
كتابة إي شيء أخر لن تظھر لأننا حددنا شرط ظھور الرسالة السابقة وھو إن تكون القیمة النصیة
المكتوبة في مربع النص = ١٩٩٣ وھذه كانت الصیغة الأولى كما يمكن كتابة ھذه الصیغة بالشكل الأتي
لتقبل إضافة أكثر من أمر في حال تحقق الشرط وھي
الصیغة الثانیة :
Code
If…. الشرط Then
الكود الأول في حال تحقق الشرط
الكود الثاني
الثالث
إلى الخ.....
End If
الكود الأول في حال تحقق الشرط
الكود الثاني
الثالث
إلى الخ.....
End If
أصبحت بأكثر من شرط لإمكانیة إضافة أكثر من If وھذه ھي الصیغة الثانیة نفس السابقة إلا إن جملة في End If أمر في تحقق الشرط نفس الطريقة السابقة إلا إننا ھنا سوف يتحتم علینا إضافة جملة نھاية الجملة لكي يعرف البرنامج أن الجملة انتھت في المكان المحدد لأنھا سوف تصبح بأكثر من سطر ولیس من المعقول إن تمتد لنھاية الإجراء أو الحدث لتجربة الصیغة السابقة يمكننا عمل نفس البرنامج السابق لكن نستخدم ھذه المرة الكود بالصورة الآتیة
لعرض أكثر من رسالة أو تنفیذ أكثر من كود
Code
Private Sub Command1_Click()
If Text1.Text = "1993" Then
MsgBox "This is the First Code"
MsgBox "The Second"
MsgBox "Etc"
Text1.backColor = VbRed
End If
End Sub
If Text1.Text = "1993" Then
MsgBox "This is the First Code"
MsgBox "The Second"
MsgBox "Etc"
Text1.backColor = VbRed
End If
End Sub
الشرطیة ألان ننتقل If جرب تشغیل البرنامج ولاحظ تنفیذ أكثر من كود وھذه كانت الصیغة الثانیة لجمل إلى
الصیغة الثالثة:
لو أردنا تنفیذ حديثین مختلفین في كل مره مثلا لو كان ما مكتوب في صندوق النص = 2013 يظھر رسالة ما ولو كانت لم تكن القیمة 2013 نريد تنفیذ كود أخر ما العمل ، العمل بالصیغة الثالثة والتي
تكون كالأتي
Code
If…. الشرط Then
الكود في حال تحقق الشرط
Else
الكود في حال عدم تحقق الشرط
End If
الكود في حال تحقق الشرط
Else
الكود في حال عدم تحقق الشرط
End If
كما تلاحظ تكون الصیغة ھي في حال تحقق الشرط قم بالاتي ثم كتابة الكود في سطر جديد ومن ثم وتعني في حال عدم تحقق الشرط ثم سطر جديد والكود في حال لم Else سطر جديد وكتابة كلمة يتحقق الشرط سوف تستوضح الأمور أكثر بالكود الأتي أيضا قم بإضافة مربع نص وزر أمر فقط واكتب الكود
Code
الأتيPrivate Sub Command1_Click()
If Text1.Text = "2013" Then
MsgBox" “الكود في حال تحقق الشرط
Else
MsgBox" "في حال عدم تحقق الشرط
End If
If Text1.Text = "2013" Then
MsgBox" “الكود في حال تحقق الشرط
Else
MsgBox" "في حال عدم تحقق الشرط
End If
لو جربت البرنامج ألان للاحظت ظھور رسالتین مختلفتین حسب القیمة المدخلة وھذه ھي جملة الصیغة الثالثة وبقت الصیغة الأخیرة
الصیغة الرابعة:
Code
If الشرط …. Then
الكود في حال تحقق الشرط الأول
ElseIf الشرط الثاني Then
الكود في حال تحقق الشرط الثاني
End if نھاية الجملة
الكود في حال تحقق الشرط الأول
ElseIf الشرط الثاني Then
الكود في حال تحقق الشرط الثاني
End if نھاية الجملة
راءت شركة مايكروسوفت انه من غیر الجید انه إذا احتاج المبرمج إن ينفذ اكواد حسب المدخلات المحددة فقط وعرض ناتج لكل إدخال( كمثال عرض رسالة محددة لو كان ما مكتوب في مربع النص = 2013 وعرض رسالة مختلفة أخرى في حال كان 2012 ورسالة مختلفة أخرى لو كان 2011 ) انه من غیر الجید إن يبطر إلى كتابة جملت عديدة لإتمام مھمته سوف أوضح لك بمثال يقوم الكود الأتي بعرض رسالتین مختلفة فقط في حال تحقق احد الشرط وھذه ھي فائدة الصیغة الرابعة
Code
Private Sub Command1_Click()
If Text1.Text = "2013" Then
MsgBox" "الكود في حال تحقق الشرط الاول
ElseIf Text1.Text = "2012" Then
MsgBox" "في حال تحقق الشرط الثاني
End If
End Sub
If Text1.Text = "2013" Then
MsgBox" "الكود في حال تحقق الشرط الاول
ElseIf Text1.Text = "2012" Then
MsgBox" "في حال تحقق الشرط الثاني
End If
End Sub
كما يمكننا أيضا إضافة كود في حال عدم تحقق كلا الشرطین بإضافة كلمة والكود وھذا مثال عن ذلك Else وحدھا وسطر جديد :
Code
Private Sub Command1_Click()
If Text1.Text = "1993" Then
MsgBox " "الكود في حال تحقق الشرط الاول
ElseIf Text1.Text = "1992" Then
MsgBox " "في حال تحقق الشرط الثاني
Else
MsgBox " "في حال عدم تحقق كلا الشرطین
If Text1.Text = "1993" Then
MsgBox " "الكود في حال تحقق الشرط الاول
ElseIf Text1.Text = "1992" Then
MsgBox " "في حال تحقق الشرط الثاني
Else
MsgBox " "في حال عدم تحقق كلا الشرطین
يمكننا الاستغناء عن الصیغة الأخیرة بجملة القرار Select Case