23-11-2008, 12:24 PM
|
|
عضو مميز
|
|
تاريخ التسجيل: May 2008
المشاركات: 835
معدل تقييم المستوى: 35
|
|
حلقة التكرار For
حلقة التكرار Forمشابهة تقريباً للحلقة السابقة Do
تستعمل لتكرار عمل معين بعدد محدد.
الشكل العام للتعليمة: For a= القيمة الأولى To القيمة الثانية
الحدث (التعليمة)
Next ملاحظة a) مجرد وسيط يمكنك تغيره
مثال سريع للجملة البسيطة :
For a = 0 To 5
MsgBox 'مثال', vbMsgBoxRight, a
Next في المثال السابق حددنا القيمة الأولى وهي 0 أي قيمة a
ثم حددنا القيمة الثانية وهي 5 .
لذلك سوف يتم عرض الرسالة بقيمة a أي خمس مرات. ودائما تنتهي جملة التكرار ب : Next
ملاحظة: لجملة التكرار Forنوعان النوع السابق هو الجملة البسيطة. والآن نأتي إلى الجملة المركبة:
الجملة المركبة تحوي الحلقة الداخلية والحلقة الخارجية . أي حلقة For داخل حلقة For
مثال سريع للجملة المركبة:
For s = 0 To 1
'بداية الحلقة الداخلية
For a = 0 To 2
Print's='; s, 'a='; a
Next
'نهاية الحلقة الداخلية
Print''
Next مثال آخر للجملة For
ضع الكود التالي في أداة التوقيت Timerولاتنسى خاصية Interval=100
Dim h
Dim w
h = Me.Height / 2
w = Me.Width / 2
For i = 1 To w
Me.Circle (h, w), i, RGB(Rnd * 100, Rnd * 200, Rnd * 90)
Next ومن هذا نجد أن حلقة التكرار For هي أبسط وأسهل من جملة التكرار السابقة Do وأي برنامج بسيط يحتاج لأي جملة إما شرطية أو حلقة تكرار.
وبهذا نكون قد إنتهينا من الجمل وحلقات التكرار . أرجو أن أكون قد حققت الفائدة.
وبالتوفيق للجميع
حلقات التكرار
for, while & do...while
والآن نتحدث عن حلقات التكرار ومنها هو الأمرfor ويعتبر استخدام حلقات التكرار ممتع جدا فهي توفر الوقت والجهد معاً وتحصل نتائج رائعة بسرعة لنبدأ فـ لنفرض أننا نريد عرض العبارةUsing for statements is a lot of fun. في نافذة المخرجاتOutput خمس مرات متتالية فهذا يتطلب منها كتابتها خمس مرات ليكون الناتج كالتالي :
قم باختبار العمل لترى الشكل التالي :
ما رأيك بكتابة نفس العبارة بدلاً من خمس مرات تكون50 مره أو100 مرة أعتقد هذا شيء صعب جدا ولكن هنا يأتي دور حلقات التكرار لتسهيل المهمة لنجرب الأمر عرض نفس العبارة خمس مرات في نافذة المخرجات باستخدام الأمرfor أولا أحذف الأوامر السابقة ثم أكتب الأمرfor وأفتح قوس هنا الأمرfor يأخذThree Expressions الأول هو نقطة البدايةinitialization وهي نقطة بداية العد وهنا عادة تقوم بتعريف متغير وتعطيه نقطة البداية إذا نقوم بتعريف متغير باسم i نوعه متغير رقميNumber Data Type يحمل القيمة صفر ليكون الأمر ثم لإنهاء هذا الأمر نضع فاصلة منقوطة ليكون الأمر كالتاليvar i:Number = 0; والآن ننتقل للـExpression الثاني وهو الشرطcondition وهنا تضع الشرط متى ينتهي الأمرfor وبما أننا نريد أن تعرض العبارة خمس مرات فقط إذا نضع اسم المتغير ثم مسافة ونكتب علامة أقل من ثم مسافة ونضع العدد5 إذا لماذا لا نضع أقل من أو يساوي ؟ تذكر أننا بدأنا العد من صفر وليس واحد وأخيرا ننهي هذا الـExpression بفاصلة منقوطة ليكون الأمر كالتاليi < 5 ; وأخيرا التحديثupdate وهنا تحدد كيف تريد تحديث قيمة المتغيرi هنا في كل مره سوف نضيف واحد على قيمة المتغير إذا نكتب التاليi++ ثم نغلق القوس ونفتح قوس متموج ثم ننتقل لسطر جديد ونضع الأمرtrace بهذا الشكلtrace("Using for statements is a lot of fun.); ثم نتقل لسطر جديد وأنهي الأمرfor بإغلاق القوس المتموج ليكون الأمر في النهاية كالتالي :
والآن قم باختبار العمل لتحصل على نفس النتيجة السابقة ويمكنك أيضا أن نقوم بعرض العبارة100 مرة فقط غير القيمة في الشرط من5 إلى100 وتحصل على ما تريدلكن في سؤال مهم جدا وهو كيف يعمل الأمرfor؟ يعتبر هذا السؤال مهم جدا جدا في البداية راح يتأكد من نقطة البدايةinitialization ويلاحظ أن هناك متغير باسمi يحمل القيمة صفر ثم ينتقل للشرطcondition ويقول هو الصفر أقل من الخمسة وهي بالفعل أقل إذا يدخل لجسمBody الأمرfor وينفذ الأمرtrace فـ يعرض العبارة مره واحدة في نافذة المخرجات ثم ينتقل للتحديثupdate ويضيف واحد على قيمة المتغير فتصبح القيمة الجديدة للمتغير هي واحد بعدها ينتقل للشرط ويتحقق هل الواحد أقل من الخمسة وهي بالفعل أقل إذا يدخل لجسم الأمرfor وينفذ الأمرtrace فـ يعرض العبارة للمرة الثانية ثم ينتقل للتحديث ويضيف واحد على قيمة المتغير لتكون القيمة الجديدة اثنين وهكذا حتى تصل قيمة المتغير إلى خمسة فينتقل للشرط ويتحقق هل الخمسة أقل من الخمسة وهنا يكون الشرط خطأ لأن الخمسة تساوي الخمسة وذلك يخرج من الأمرfor ونحصل تكرار للعبارة خمس مرات في نافذة المخرجات .
وبذلك نحصل على قاعدة وهي كالتالي :
وهذا مخطط يوضح طريقة عمل الأمرfor كالتالي :
أما بخصوص الأمرانwhile & do…while فـ لهما نفس طريقة عمل الأمرfor لكن تختلف طريقة الكتابة وهذا توضيح لطريقة كتابة كل من هذين الأمرين :
والآن ننتقل للتطبيق في البداية قم بفتح الملفfor.fla وحدد الإطار الأول من طبقة الـActions وأفتح نافذة الـAction Script ليظهر لك الشكل التالي :
ركز على تعريف المتغيرnPieces وهو يقوم بحساب عدد القطع المربعة التي تضاف للقناع لكي تطبق على الصورة والأمرfor بشكل عام سوف يقوم بإضافة عدد قطع مربعة للقناع التي سوف تطبق على الصورة ولو تلاحظ الشرط يقوم بأن قيمة المتغيرi أقل من قيمة المتغيرnPieces وهي50 لذلك سوف يقوم بإضافة50 قطعة مربعة للقناع ثم تطبق على الصورة والآن قم باختبار العمل لترى الشكل التالي :
وإذا قمت بعد القطع المربعة سوف تلاحظ أنها50 أو عدد قريب منه ويمكنك التحكم بعدد هذه القطع بتغيير قيمة المتغيرnPieces إلى أي عدد تريد .
تمنياتي لكم بالتوفيق
ســ لمــ لمــ
|