اجعل رورو44 صفحتك الرئيسية | احفظ رورو44 في مفضلتك | ارسل رورو44 إلى صديقك | أعلن على رورو44 | English Interface

 

 

 

شات خدمات مسجات جوال بطاقات رسائل حب دليل مواقع شات خليجي  دردشة منتديات حسناء الفارس عالم الرومانسية

مواقع سعودية | مواقع كويتية | مواقع بحرينية | مواقع قطرية | مواقع عمانية | مواقع يمنية | مواقع عراقية | مواقع اماراتية

 
    دروس في برمجة المواقع  في بي سكربت - VB Scripts
 

 

سلسلة تعلم VBScript – الجزء الثاني - التكرار



الدرس السادس: الحلقات التكرارية Loops

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

توفر لغة VBScript إمكانية تطبيق فكرة الحلقات التكرارية بصورتين، فيمكنك تنفيذ مهمة ما عدد معين من المرات أو تنفيذ المهمة حتى يتحقق شرط معين...

الحلقة For .... Next

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


كود:



 

For (counter) = (Start) To (End) Step (Num)

‘مجموعة الأوامر



Next






حيث counter متغير يمثل العداد و start قيمة ابتدائية للعداد و End القيمة النهائية، أما الكلمة المفتاحية Step فهي اختيارية ويمكن استعمالها لزيادة قيمة العداد بقيم مختلفة ويقتضي حذفها أن تكون الزيادة بمعدل واحد ... وهذا مثال توضيحي.. 

 

كود:





 

Dim I

For I = 1 To 10

document.write "VBScript مرحبا بكم معنا في دروس" & "< BR>"

Next






في المثال السابق قمنا بكتابة عبارة الترحيب عشر مرات، لاحظ انه يمكننا التعامل مع رموز HTML عند وضعها بين علامتي تنصيص.

ويمكن إدخال حلقة تكرارية داخل أخرى بحيث يتم تنفيذ الأمر الذي بداخل الحلقة الداخلية بمقدار حاصل ضرب التكرارين وهذا ما يسمى بالحلقات المتداخلة Nest loop..
لاحظ المثال.. 

 

كود:





 

For I = 10 To 1 Step -1

For K = 1 To 10

'كتابة العددين المراد ضربهما

document.write I & " * " & K & " = "

'كتابة نتيجة الضرب

document.write I*K & "< BR>"

'نهاية الحلقة الداخلية

Next

'وضع خط أفقي بعد نهاية كل جدول

document.write "< HR>"

'نهاية الحلقة الخارجية

Next






عند تطبيقك للمثال السابق ستلاحظ كتابة جدول الضرب

للأعداد من 10 إلى 1 تنازليا..

الآن تأمل الشيفرة السابقة، تلاحظ في السطر الأول الحلقة الأولى والتي تحوي عداد تنازلي، وقد استعملنا القيمة –1 مع الكلمة المفتاحية Step لكي نجعل الزيادة في قيمة التكرار تكون بمعدل تناقصي من 10 إلى 1 وهذه الحلقة تستخدم لتحديد الجدول مثلا في المرة الأولى الجدول رقم 10 ثم 9 ثم 8 وهكذا... وفي الحلقة الداخلية نقوم بطباعة جدول العشرة كاملا ونعود لجدول التسعة وهكذا..

الحلقة Do .... loop

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


أولا: اختبار الشرط عند بداية الحلقة..
- الحلقة Do ... While

 

كود:



 

Do While (Condition)

الأوامر التي تريد تكرارها طالما أن الشرط متحقق

loop




- الحلقة Do ... Until 

 

كود:





 

Do Until (Condition)

الأوامر التي تريد تكرارها حتى يتحقق الشرط.

loop




وهذا مثال توضيحي 

 

كود:



 Dim Counter


Counter =0

Do While Counter <> 4

Counter = Counter + 1

document.write Counter & "< BR>"

Loop



تلاحظ في المثال السابق كتابة الأرقام من 1 إلى 4، حيث في المرة الأولى تزيد قيمة العداد لتصبح 1 ويتم كتابة العدد ثم 2 ... 3 وهكذا حتى تصبح قيمة العداد 4 فلا يمكننا بعدها تكرار الدخول إلى الحلقة...

ثانيا: اختبار الشرط عند نهاية الحلقة... والشرط
الموجود بنهاية الحلقة هو الذي يحدد هل يتم إعادة تكرار الحلقة أم لا...

- الحلقة Loop ... While 

 


كود:


 

Do

الأوامر التي تريد تكرارها

loop While (Condition)



- الحلقة Loop ... Until 

 


كود:



 

Do

الأوامر التي تريد تكرارها

loop Until (Condition)



وهذا مثال توضيحي... 

كود:


 

Do

Counter = Counter + 1

document.write Counter & "< BR>"

Loop Until Counter = 4



الحلقة While ... Wend

هذه الحلقة كانت مستخدمة في لغة بيسك القديمة و فيما يبدو أن مايكروسوفت تركتها
لمسألة التوافقية بين الإصدارات فقط ويمكن تنفيذ مهمتها باستخدام الحلقة Do While
... loop وبمرونة اكثر....

كود:



 

Dim SiteName

'سيتم التكرار طالما انك لم تدخل العنوان بشكل صحيح

'Not لاحظ استعمالنا للمعامل

While Not SiteName = "www.c4arab.com"

SiteName = InputBox("ادخل عنوان موقع الموسوعة")

Wend



المجموعات والحلقة For Each .... Next

الحلقة For Each .... Next هي نوع خاص من التكرار ويستخدم عند التعامل مع
المجموعات... والمجموعة تتكون من عدة كتل من البيانات ويمكن التعامل مع المصفوفات
كمبدأ شبيه بالمجموعات وتستخدم المجموعات غالبا عند التعامل مع الكائنات والتي
سنتطرق إليها لاحقا...

وسنتعامل هنا مع المصفوفات لتوضيح طريقة التعامل مع الحلقة For Each .... Next ....

تستخدم العبارة السابقة لإنشاء تكرار يمر على كافة العناصر في المجموعة بغض النظر
عن عددها والصيغة العامة لها على الشكل التالي ..

كود:


 

For Each (Variable) In (Collection)

‘الأوامر التي سيتم تنفيذها

Next




وهذا مثال توضيحي... 



كود:

 

Dim MyCol,Counter,SiteName(3)

Dim Prompt,Title

'For...Next إسناد قيم إلى المصفوفة من خلال حلقة

For Counter = 1 To 3

Prompt = "ادخل موقعا من مفضلتك"

Title ="الموقع رقم " & I

SiteName(Counter) =InputBox(Prompt,Title) & "< BR>"

Next

'For Each...Next قراءة القيم من المصفوفة من خلال حلقة

For Each MyCol In SiteName

'كتابة العنصر الحالي

document.write MyCol

Next




ملاحظات عامة:

1) يمكن الخروج من الحلقة التكرارية قبل إنهاءها وذلك باستخدام العبارة Exit Do
للحلقة Do ... loop و Exit For للحلقة For ... Next ... 

 

كود:

 

Dim sSiteName,iCounter

For iCounter = 1 To 10

sSiteName =InputBox("ادخل موقعا من مفضلتك")

'إذا لم تدخل أي عنوان سيتم الخروج من الحلقة

If sSiteName = "" Then Exit For

document.write sSiteName & "< BR>"

Next



2) تجنب الحلقات الغير منتهية... لاحظ المثال...

 

كود:


 

Dim iNum

Do Until A <> 0

iNum = InputBox("ادخل رقما")

iNum = iNum * 0

Loop

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



المزيد من المواضيع

سلسلة تعلم VBScript – الجزء الثالث - :نظرة لبعض تطبيقات اللغة.
سلسلة تعلم VBScript – الجزء الثالث - :المزيد عن الكائنات.
الدرس الثاني عشر:نظرة لبعض تطبيقات اللغة.
سلسلة تعلم VBScript – الجزء الثالث - : مكوناتCOM، استخدامها و بنائها
سلسلة تعلم VBScript – الجزء الثالث - الكائنات والأصناف
سلسلة تعلم VBScript – الجزء الثاني - الإجراءات المعرفة ضمن لغة VBScript
سلسلة تعلم VBScript -الجزء الاول - المبادئ
سلسلة تعلم VBScript – الجزء الثاني - الدوال والإجراءات الفرعية
سلسلة تعلم VBScript – الجزء الثاني - الجمل الشرطية
سلسلة تعلم VBScript – الجزء الثاني - مفاهيم اللغة.
سلسلة تعلم VBScript -الجزء الاول - الاسس

1

 

الاقسام الرئيسية

دروس للمبتدئين

--

دروس في أنظمة التشغيل

--

دروس في الانترنت

--

دروس في لغات البرمجة

--

دروس في برمجة المواقع

--

دروس في الأوفيس

--

دروس في الرسوم و التصميم

--

دروس في قواعد البيانات

--

دروس في الألعاب والبرامج

--

دروس في المكونات الصلبة

--

دروس في الشبكات

--

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

--

دروس في الذكاء الاصطناعي

--

القائمة البريدية

  فضائح | ماسنجر | تداول | الحياة الزوجية | عجائب وغرائب| دروس تعليمية | عالم حواء | فضائح الفن | ستار اكاديمي | نكت | برامج | صور | | شات سعودي | شات عربي | ماسينجر | مسجات | دليل مواقع | دليلك | مواقع سعودية | مواقع كويتية | مواقع بحرينية | مواقع قطرية | مواقع عمانية | مواقع يمنية | مواقع عراقية | مواقع اماراتية | دردشة خليجية | دردشة سعودية | دردشة عربية | شات صوتي | دردشة صوتية | دردشة كويتية | دردشة اماراتية | دردشة عمانية | دردشة قطرية | دردشة بحرينية | دردشة عراقية | دردشة يمنية | سكس | طريق الاسلام, انا مسلم , طريق الهدايه , مسلمون , منوعات اسلاميه | اسلاميات , برامج اسلامية , منوعات اسلامية | جنس | الاسرة المسلمة , الاسرة العربية , اسرتي , عائلتي | برامج الاسره , نصائح معلومات , اسرة عربية سعودية خليجية | دروس تعليمية , مكتبة الدروس التعليمية | شروح برامج , شرح برامج , دورات تعليميه | طب وصحه - المركز الطبي | طبيبك على الانترنت , معلومات طبية , معلومات صحيه

Roro44.com xml :                            

شات سعودي | شات عربي | شات خليجي | العاب | دردشات | العاب بنات

 |  اشهر موقعك | احصائيات الموقع | اسعار الاعلانات |  لمراسلة الإدارة  |

:: ©2007-2003 www.roro44.com All rights reserved ::