برمجة جامباس/جمل التحكم-حلقات التكرار
أحد الأسباب التي تجعلنا نكتب برنامجا هو أتمتة المهام المتكررة وفقا لبعض الشروط. يتم توفير هذه الوظيفة من قبل هياكل المراقبة أو دورات تكرارها. هذه الهياكل تجعل من الممكن لجزء واحد من البرنامج أن يتكرر عدة مرات ، اعتمادا على بعض الشروط.
FOR – NEXT
عدليتم التكرار لعدد محدد مسبقا من الأوقات. .
- بناء الجملة
FOR Variable = Expression TO Expression [STEP Expression]
...
NEXT
'تكرار محدد.
FOR iCount = 1 TO 20 STEP 3
PRINT iCount & " ";
NEXT
FOR EACH IN
عدلتكرار محدد بعدد المتغيرات في تعبير معين.
- تركيب الجملة
FOR EACH Variable IN Expression
...
NEXT
حلقة تعداد.
FOR EACH Element IN Dict
PRINT Element;
NEXT
DO – LOOP
عدلهذه الجملة تقوم بعملية تكرار للشرط طالما كانت قيمة ذلك الشرط صحيحة. سيتم تقييم الشرط إما في بداية الشرط أو نهايته وذلك إعتمادا على الجملة المستخدمة هل هي: DO WHILE - LOOP أو DO - LOOP UNTIL. إذا كانت قيمة الشرط منذ البداية خطأ (false) عند تقييم الشرط في بداية الجملة (شرط الدخول) فلن يتم تنفيذ الأكواد بداخل تلك الجملة أبدا. وعلى العكس من ذلك ، إذا تم تقييم الشرط في نهاية الجملة (شرط الخروج) فسيتم تنفيذ الأكواد بداخل تلك الجملة على الأقل مرة واحدة ، على الرغم من أن الشرط صحيحا في خروج ودخول الجملة.
- بناء الجملة
DO [WHILE Condition]
...
[BREAK|CONTINUE]
...
LOOP [UNTIL Condition]
'تكرار لا نهائي.
DO WHILE a <= 5
PRINT "Hello World"; a
INC a
LOOP
' نفس التأثير مع UNTIL
DO
PRINT "Hello World"; a
INC a
LOOP UNTIL a = 6
REPEAT – UNTIL
عدلسيتم تكرار الجمل المحصورة بين طرفي الجملة حتى تصبح قيمة تلك الجمل صحيحة.
- بناء الجملة
REPEAT
...
UNTIL Condition
'حلقة تكرار مع اختبار خروج في النهاية.
REPEAT
PRINT Timer 'حلقة التكرار سيتم تنفيذها مرة واحدة على الأقل حتى لو كانت قيمة UNTIL خطأ منذ البداية.
UNTIL Timer > 10
WHILE - WEND
عدلالجمل المحصورة بين طرفي الجملة سيتم تنفيذها مادامت مطابقة للحالة.
- بناء الجملة
WHILE Condition
...
WEND
'إنشاء حلقة مع اختبار خروج في البداية
WHILE a \<= 10
PRINT "Hello World"; a
INC a
WEND