الدرس الرابع عشر ...الجمل الشرطية و حلقات التكرار فى الفجوال بيسك 6

استعرض الموضوع السابق استعرض الموضوع التالي اذهب الى الأسفل

الدرس الرابع عشر ...الجمل الشرطية و حلقات التكرار فى الفجوال بيسك 6

مُساهمة من طرف أحمد مناع في الأربعاء ديسمبر 14, 2011 8:52 am

بسم الله الرحمن الرحيم



الاخوة الافاضل ...السلام عليكم ورحمة الله وبركاتة و مرحبا بكم فى الدرس الرابع عشر من دروس الفجوال بيسك 6 و التى يقدمها منتدى مصر التقنى ....فى هذا الدرس أن شاء الله تعالى سنتعرف سويا عن الجمل الشرطية و حلقات التكرار .......فها بنا نبدأ ,,,,,,,,,,,,,,,,,,


أولا : الجمل الشرطية :



ويقصد بها تنفيذ أمر أو مجموعة من الاوامر بناءاً على تحقيق شرط أو شروط معينة فاذا تحقق هذا الشرط يتم تنفيذ الامر والعكس...أو بمعنى عامى هو أن أقول للبرنامج "لو حصل كذا أفعل الاتى "...و اليكم أهم تراكيب تلك الجمل على النحو التالى :



1 _ الجملة الشرطية IF



تعتبر هذه الجملة من أشهر تراكيب الجمل الشرطية و أكثرها أستعمالا ولها عده أشكال كلها تبدأ بكلمة if و تنتهى بكلمة end if أذا كان الكود فى عدة أسطر ....و أشكالها تأتى على النحو التالى :



الشكل الاول :العبارة IF - Then



هذا الشكل من أبسط أشكال الجملة الشرطية if و التعليمة الخاصة لتلك العبارة يكتب كما فى الصورة التالية :






ففى هذا الشكل البسيط وهو شرط واحد وامر واحد فإن كان الشرط صحيحاً فإن الأمر الذى يلى Then وهو الذى يتم تنفيذه اما إذا كان الشرط خطأ يتم تجاهله ..



مثال عملى ...ضع أداة النص Text1 و زر أمر Command1 أكتب السطر التالي في حدث الزر:


الرمز:


If Text1.Text = "123" Then MsgBox "تم أدخال الرقم السرى"




فى الكود السابق بقول للبرنامج إذا كان النص المكتوب هو '123' عند ذلك أظهر للمستخدم رسالة تخبره بأنه قد تم أدخال الرقم السرى ....ولاحظ أننا لم ننهى الجملة بكملة end if وذلك لاننا كتنبا الكود فى سطر واحد أما لو أننا كتبناه فى عدة أسطر فلابد أن ننهى الجملة بكلمة end if و ذلك على النحو التالى :



الرمز:


 

If Text1.Text = "123" Then
MsgBox "تم أدخال الرقم السرى"
End If

 





ويمكنك أيضا وضع أكثر من أمر فى شرط واحد ....كما فى الكود التالى :




الرمز:


 

 

If Text1.Text = "123" Then

Beep
MsgBox "تم أدخال الرقم السرى"
End If

 



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



ملحوظة : الدالة Beep هى دالة لاطلاق صفار الخطأ كما فى رسائل الويندوذ .



الشكل الثانى : العبارة IF - Then - Else

الشكل العام للتعليمة بأستخدام هذه العبارة تكون على النحو التالى :





ففى هذه الحاله يقوم البرنامج بتقسيم الشرط فإن كان صحيحا ينفذ مجموعة الاوامر التى تلى Then وان كان الشرط غير صحيح نفذ مجموعة الاوامر التى تلى Else حتى يصل الى End IF اى لا بد من تنفيذ احدى المجموعتين.



مثال عملى ....فى مثالنا السابق نجد أن المستخدم لو أدخل الرقم 123 تظهر رسالة تخبره بأنه قد تم أدخال الرقم السري لكن ماذا يحدث لو أن هذا المستخدم أدخل رقم أخر غير المكتوب فى الكود؟ ....لن يحدث أى شىء !!لكن ممكن أن تستخدم كلمة else لو أردنا أن تظهر رسالة أخرى تفيد بأن الرقم السرى خطأ فى حالة كون المستخدم أدخل رقم أخر غير 123 ....وسيكون الكود على النحو التالى :



الرمز:


If Text1.Text = "123" Then
Beep
MsgBox "تم أدخال الرقم السرى"
Else
MsgBox "عفوا الرقم السرى غير صحيح "
End If

 




ففى المثال السابق إذا كان النص المكتوب هو '123' عند ذلك أطلق صفارة خطأ ثم أظهر للمستخدم رسالة تخبره بأنه قد تم أدخال الرقم السرى...أما أذا كان الرقم المدخل ليس 123 عنئد أظهر رسالة للمستخدم تفيد بأن الرقم السرى غير صحيح .



2 _ جملة Select



جملة Select تشبه تقريباً جملة If إلا أنها تستعمل حالات متعددة وفي كل حالة تكتب تعليمة مختلفة.وفى هذه الحالة يقوم البرنامج بفحص الشرط ثم يتابع احتمالات تحققه فى الحالة الاولى فاذا تم تحقق الشرط يقوم البرنامج بتنفيذ مجموعة الاوامر التى تلى Case حتى كلمة Case التالية واذا لم يتحقق الشرط فى الحالة الاولة يذهب الى الثانية ثم الى الثالثة وهكذا حتى يصل الى Case Else حيث ينفذ الاوامر التى بعدها حتى يصل الى End Select


الشكل العام لهذه الجملة تكون :



الرمز:


Select Case (العنصر)

 

Case (الحالة)

 

التعليمة

 

End select

 






مثال عملى ...سوف نعمل مثال بسيط لهذه الجملة.قم أضف فورم وأضف الأدوات التالية Text1 ,Label1

Command1






أنقر فوق الزر نقرتين وأكتب الشيفرة التالية:


الرمز:


 

On Error GoTo b

Dim a As Integer

a = Text1

Select Case a

Case 0 To 10

Label1.Caption = "سيىء"

Case 10 To 40

Label1.Caption = "ضعيف"

Case 40 To 60

Label1.Caption = "وسط"

Case 60 To 80

Label1.Caption = "جيد"

Case 80 To 100

Label1.Caption = "ممتاز"

End Select


Exit Sub

b:

MsgBox "من فضلك أدخل قيمية عددية", vbInformation, "رسالة"


 



شرج الشيفرة السابقة:

السطر الأول : التصريح عن خطأ أسميناه b

السطر الثاني: التصريح عن متحول عددي صحيح a

السطر الثالث: إسناد النص في Text1 إلى المتحول a

السطر الرابع : إلى End Select بداية التعليمة Select . أي حدد حالات المتحول a في كل حالة عرض تعليمة مختلفة
السطور التي بعد End Select هي عمل الخطأ أي عرض رسالة عند الخطأ . حاول كتابة نص عادي فسوف تظهر لك الرسالة.ولا حظ أنه أنهينا العبارة ب End Select مثل End If




و الى هنا ينتهى الجزء الاول من هذا الدرس ...والى اللقاء فى الجزء الثانى من هذا الدرس وهو عن الحلقات التكراية .....Very Happy

ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم

إن فقدت مكان بذورك التي بذرتها يوما ما سيخبرك المطر أين زرعتها ..لذا إبذر الخير فوق أي أرض وتحت أي سماء ومع أي أحد.. فأنت لا تعلم أين تجده ومتى تجده؟! إزرع جميلا ولو في غير موضعه .... فلا يضيع جميلا أينما زرعا .. فما أجمل العطاء... فقد تجد جزاءه في الدنيا أو يكون لك ذخرا في الآخرة

أحمد مناع
.
.

تاريخ التسجيل : 15/02/2011
المساهمات : 810
النقاط : 1479
التقيم : 69
الدولة : مصر
الجنس : ذكر

http://egy-tech.forumegypt.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: الدرس الرابع عشر ...الجمل الشرطية و حلقات التكرار فى الفجوال بيسك 6

مُساهمة من طرف أحمد مناع في الأربعاء ديسمبر 14, 2011 12:41 pm

بسم الله الرحمن الرحيم



أهلا وسهلا بكم الاخوان الكرام فى الجزء الثانى من هذا الدرس و هو عن الحلقات التكرارية ...



ثانيا : الحلقات التكرارية



ويقصد بها تكرار مجموعة من الاوامر عدد معين من المرات وهناك ثلاثة تراكيب لعمل ذلك وهى :


1 – حلقة التكرار For …Next



ويستخدم هذا التركيب اذا كنت تعرف عدد لمرات التى ترغب فى تكرارها وصياغته كالتالى


الرمز:


For a = القيمة الأولى To القيمة الثانية

 

(الحدث أو التعليمة)

 

Next a

 




ملاحظة ......(a) مجرد وسيط يمكنك تغيره ....واليكم مثال سريع للجملة البسيطة السابقة:

الرمز:


 

For a = 1 To 6

Print "أحمد مناع"

Next a

 




في المثال السابق حددنا القيمة الأولى وهي 0 أي قيمة a ثم حددنا القيمة الثانية وهي 6 .لذلك سوف يتم طباعة الجملة "أحمد مناع "بقيمة a أي خمس مرات.ودائما تنتهي جملة التكرار ب :Next



ويمكنك أن تستخدم للعد الامر Step لزيادة فى كل مرة اختيارية ....ففى مثالثا السابق نفترض أننا نريد طباعة الجملة بشرط أن يكون مقدار العدد هو 2 ....كنتب الكود التالى



الرمز:


For a = 1 To 6 Step 2

Print "أحمد مناع"

Next a

 




فى التمرين السابق يتم طباعة الجملة على النافذة ثلاث مرات فقط وليس 6 لان الفرق بين كل رقم والتالى له 2 أى أن البرنامج سيقوم بالعد على النحو التالى 2 /4 /6 و بالتالى ستكون النتجية ثلاث مرات فقط



ملاحظـات
• يمكن أنهاء الحلقة بعبارة Next بدون ذكر رمز العداد.
• يمكن الخروج من الحلقة بعبارة GOTO أو Exit For.
• لا يمكن الدخول للحلقة ألا من خلال عبارة For.
• لا يجوز تغيير قيمة العداد داخل الحلقة.

2 _ حلقة التكرار Do



يوجد عدة أشكال لهذه الحلقة وهى على النحو التالى :



1_2 : عبارة Do-Loop



تعتبر هذه العبارة أبسط شكل من أشكال حلقة التكرار Do ويتم بنائها على النحو التالى :

الرمز:


Do

التعليمة

Loop




مثال عملى ...ضع الكود التالى :



الرمز:


Do

print "أحمد مناع"

 

Loop

 





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



2_2 جملة Do - Loop Until



تستعمل جملة التكرار تلك لعمل حدث ما بعدد معين مثل جملة For السابقة لكن بشرط أن تصرح عن متحول قبلها لكي تعمل الجملة:


الرمز:
 
Dim a As Integer



 

Do

 

a=a+1

 

التعليمة

 

Loob Until (a Value)



شرح الكود



في السطر الأول صرحنا عن متحول عددي



السطر الثاني بداية جملة التكرار



السطر الثالث زيادة قيمة المتحول a في كل حلقة تكرار



السطر الرابع تكتب التعليمة التي تريدها



السطر الخامس هو عدد مرات التكرار وهو سوف يكون قيمة المتحول a مثلاً :a<6 أو a=5



لذلك سوف يتم عمل التعليمة التي كتبتها 5 مرات ولهذا السبب قلنا عليك التصريح عن متحول لأنه دون ذلك سوف تكرر التعليمة إلى مالانهاية.



3_2 :جملة Do - While



يستخدم هذا النوع عند عدم معرفة عدد مرات التكرار وتتم السيطرة على عملية التكرار من خلال شرط يوضع بعد عبارة While كما موضح أدناه:


الرمز:
  Do While R > 20
  S = 2 * R
  Print S
  Loop



ويمكننا الخروج من حلقة Do – While بعبارة Exit Do.


أنتهينا من هذا الدرس و الى اللقاء أن شاء الله تعالى فى درس جديد Smile Smile

ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم

إن فقدت مكان بذورك التي بذرتها يوما ما سيخبرك المطر أين زرعتها ..لذا إبذر الخير فوق أي أرض وتحت أي سماء ومع أي أحد.. فأنت لا تعلم أين تجده ومتى تجده؟! إزرع جميلا ولو في غير موضعه .... فلا يضيع جميلا أينما زرعا .. فما أجمل العطاء... فقد تجد جزاءه في الدنيا أو يكون لك ذخرا في الآخرة

أحمد مناع
.
.

تاريخ التسجيل : 15/02/2011
المساهمات : 810
النقاط : 1479
التقيم : 69
الدولة : مصر
الجنس : ذكر

http://egy-tech.forumegypt.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: الدرس الرابع عشر ...الجمل الشرطية و حلقات التكرار فى الفجوال بيسك 6

مُساهمة من طرف aboseif06 في الإثنين مارس 19, 2012 8:04 am

جزاك الله خيرًا معلومة exit for K وكذلك exit do كنت محتاجها وبحثت عنها ولم أجدها فيما سبق

aboseif06
.
.

تاريخ التسجيل : 19/03/2012
المساهمات : 1
النقاط : 1
التقيم : 0
الدولة : مصر
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

استعرض الموضوع السابق استعرض الموضوع التالي الرجوع الى أعلى الصفحة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى