الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

If .. Then .. Elseif .. Else

بدأه الباحث_2 في 1 مايو 2008 · 1 رد · 1,158 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

هذا دراسة خاصة حول IF Statement .

----------------------------------------------------------------------------

إحدى أهم الأكواد لمعالجة المعلومات في أي إجراء حدثي (Event Procedure) هي التعبير الشرطي (Conditional Expression) هو جزء من جمل برمجية

(Program Statement) تطرح سؤال (True) صح أو (False) خطأ عن خاصية

(Prepertie) أو متغير (Variable) أو جزء من البيانات في شيفرة البرنامج (Code) .

مثلاً يقيم التعبير الشرطي التالي :

Price < 100

إلى True إذا كان المتغير Price يحتوي على قيمة أصغر من 100 وإلى False إذا كان يحتوي على قيمة أكبر من 100 أو تساوي 100

* تستعمل عوامل المقارنة التالية في التعبير الشرطي :

799340-2.jpg

* يبين الجدول التالي بعض التعابير الشرطية ونتيجة كل منها :

799340-3.jpg

- بنيات القرار IF .. Then .. Else

عندما يستعمل تعبير شرطي في مجموعة خاصة من الجمل تسمى (بنية قرار)

(Decision Sturctures) فإنه يتحكم بما إذا كان سيتم تفيذ جمل أخرى في البرنامج أو لا وفي أي ترتيب سيتم تنفيذها .

بالإمكان إستعمال بنية القرار IF Statement لتقييم شرط في البرنامج والقيام بعمل ما بناءً على النتيجة.

في أبسط أشكالها تكتب بنية القرار IF Statement على سطر واحد

799340-4.jpg

حيث Condition هو تعبير شرطي و Statement هي جملة برمجية فيجوال بيسك

مثلاً :

799340-5.jpg

تحديد ما إذا كان على البرنامج أن يضبط الخاصية Text للكائن Label1 عند "Good" أم لا .

إذا إحتوى المتغير Price على قيمة أكبر أو تساوي 20 يضبط فيجوال بيسك الخاصية Text للكائن Label1 على "Good" وإلا سيتخطى الجملة وينفذ السطر التالي .

799340-6.jpg

شكل آخر لـبنية القرار IF Statement :

799340-7.jpg

إذا إحتوى المتغير Price على قيمة أكبر أو يساوي 20 سيقوم فيجوال بيسك بضبط خاصية Text للكائن Label1 على "Good" أما إذا إحتوى المتغير Price غير هذه القيمة فإن فيجوال بيسك سيضبط خاصية Text للكائن Label1 على "Not Good"

بالإمكان وضع الكود السابق في سطر واحد :

799340-8.jpg

شكل آخر أيضاً لـبنية القرار IF Statement :

799340-9.jpg

يتم تقييم condition1 أولاً إذا كان هذا التعبير الشرطي صح ، يتم تنفيذ الجمل التي تليه ، وإذا لم يكن الشرط الأول صح ، يتم تقييم التعبير الشرطي الثاني condition 2 ، إذا كان الشرط الثاني صح يتم تفييذ الجمل التي تليه (بالإمكان إضافة المزيد من الشروط والجمل ElseIF إذا كانت هناك شروط أكثر يجب تقييمها).

اخيراً إذا لم يكن أي من التعابير الشرطية صح ، يتم تنفيذ الجمل التي تلي الكلمة Else .

أخيراً يتم إنهاء البنية بأكملها بالكلمات الأساسية End IF

مثال :

799340-10.jpg

إذا إحتوى المتغير Price على قيمة أكبر من50 سيقوم فيجوال بيسك بضبط خاصية Text للكائن Label1 على "Very Good" و إذا إحتوى المتغير Price على قيمة تساوي 50 فإن فيجوال بيسك سيضبط خاصية Text للكائن Label1 على " Good" ، أما إذا لم يحتوي المتغير Price على أياً من القيم السابقة سيقوم فيجوال بيسك بضبط خاصية Text للكائن Label1 على " Not Good"

ملاحظة : بالإمكان وضع أكثر من جمل برمجية في سطر واحد :

799340-11.jpg

سيتم تنفيذ الثلاث الجمل إذا كان A > 10 .

وهذا برنامج قد قمت بعمله يوضح عمل هذه الطريقة :

799340-12.jpg

وهذا كود البرنامج - داخل هذا الزر :

799340-13.jpg

799340-14.jpg

إذا كان A > 10 ، سيتم تنفيذ A = A + 1 و B = B + A و C = C + B :

799340-15.jpg

أما إذا لم يتحقق الشرط A > 10 فلن يتم تنفيذ شي سوى ظهور نفس الأرقام الذي كتبتها في مربعات النص الثلاثة :

799340-16.jpg

* إستعمال العوامل المنطقية في التعابير الشرطية IF Statement :

بالإمكان إختبار أكثر من تعبير شرطي واحد في العبارات ElseIF , IF .. Then إذا كنت تريد شمل أكثر من معيار إختيار واحد في بنية القرار .

يتم ربط الشروط الزائدة بإستعمال واحد أو أكثر من العوامل المنطقية التالية :

799340-17.jpg

هذه بعض الأمثلة للعوامل المنطقية سنفترض في الأمثلة أنه :

200 = Name = "Albahith" , Price

799340-18.jpg

* OrElse , AndAlso :

OrElse , AndAlso عاملين منطقيين بالإمكان إستعمالهما في الجمل الشرطية .

يعمل هذين العاملان بنفس طريقة عمل Or , And ، لكنهما يقدمان تسهيلاً مهماً في طريقة تقييمهما .

مثال على AndAlso :

799340-19.jpg

لكي يتم تنفيذ جمل البنية IF يجب أن يكون الشرطان صح ، إذا كان الشرط الأول خطأ ، سيتخطى فيجوال بيسك إلى السطر التالي أو الجملة Else فوراً من دون إختبار الشرط الثاني .

هذا التقييم الجزئي للجملة IF منطقي أكثر لأنه لماذا يتابع فيجوال بيسك في تقييم الجملة IF إذا كان من غير الممكن أن يكون الشرطان صح .

مثال على OrElse :

799340-20.jpg

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

جميع الحقوق محفوظة لــ " الباحث للبرمجة "

#2

ياسلام عليك أخي الباحث 2

معلومات قيمة ...

وجزاك الله خير ان شاء الله

كـلـمـا زاد عـلـمـك لـلـشـئ الـمـجـهـول ..... كـلـمـا زاد جـهـلـك لـلـشـئ الـمـعـلـوم

و كـلـمـا زاد جـهـلـك لـلـشـئ الـمـعـلـوم ..... كـلـمـا زاد شـغـفـك لـعـلـم الـمـجـهـول

الــلـــــــهـــــم عـــلـــمـــنــــــي بـــمـــا يـــنــفــعــنــي وانــفــعــنــي بــمــــا عـــلـــمــتــنـــي

مواضيع مشابهة