السلام عليكم ورحمة الله وبركاته
أحييكم جميعا وأشكر حرصكم واهتمامكم وتعليقاتكم وأسأل الله أن أكون دوما عند حسن ظنكم
الدورة لم تتوقف لكن كثرة المشاريع وباقى الواجبات سبب ضيق الوقت ، والوقت المخصص للإنترنت يأتى أحد عالخاص أو الماسنجر أو الإيميل ويسأل وهم معذورون ولكن الرد على كل شخص يضيع الوقت للدورة أو المنتدى بالنسبة لأى موضوع مفتوح أو أسأله أخرى .
-------------------------------------------
الحلقات التكرارية
درسنا فى الدرس الماضى حلقة تكرارية وهى :
( For ---- Next )
وعرفنا أن فائدة الحلقة التكرارية هى تكرار تعليمات بعدد محدد من المرات ثم بعدها أى بعد إكتمال عدد التكرار المطلوب يتابع البرنامج سير التعليمات التالية ومن فائدة هذه الحلقة أننا أيضا نستطيع الإستفادة من المتغير المستخدم ويمكننا جعل المتغير يقفز رقمان أو ثلاثة أرقام أو أكثر فى كل دورة من التكرار كما أشرنا إلى ذلك ،
والآن مع حلقة أخرى متشابهة وهى :
( While ---- Wend )
و هذه الحلقة تتشابه فى عملية التكرار مع الحلقة السابقة لكن تمتاز بمزايا أكثر كما أن تلك الحلقة السابقة تختص بالتكرار لعدد محدد من المرات أما هذه الحلقة التكرارية الآن تقوم بالآتى :
1- التكرار لعدد محدد من المرات :-
وهنا تتشابه مع حلقة ( For --- Next )
2- التكرار لمرات ومرات إلى أن يتم تحقيق شرط محدد :-
وهنا يمكننا الإستفادة من هذه الحلقة فى عدة أمور منها مقارنة متغيران أو متغير مع قيمة معلومة ، أو متغير مع قيمة مجهولة لنا ، أو مراقبة حدث إدخال على طرف للمتحكم وتتم هذه المراقبة أثناء وجود البرنامج عند نهاية التعليمات وبعد إعادة التوجيه التى تتم بالتعليمة ( Wend ) فيتجه البرنامج للتعليمة ( While ) فيكون فعل الشرط بجوارها فإن كان متحققا فإن الحلقة تعيد التكرار إلى أن يتم عدم تحقيق فعل الشرط ففى هذه الحالة يتم الخروج من الحلقة فورا .
while var < 50
portb.0 = 1
(delay_ms(1000
portb.0 = 0
(delay_ms(1000
var = var + 1
wend
كرر إذا كان var < 50
portb.0 = 1
(delay_ms(1000
portb.0 = 0
(delay_ms(1000
var = var + 1
إرجع لبداية الحلقة
يمكن أن يكون فعل الشرط مثل :
porta.0 = 1
أو
portb = 120
أو true وهذه الكلمة لعمل تكرار لا نهائى .
إلى اللقاء فى الدرس القادم إن شاء الله