Module: دورات. حلقة مع معلمة (من أجل)


Problem

1/17

حلقات في البرمجة

Theory Click to read/hide

تخيل موقفًا نحتاج فيه إلى عرض نفس الكلمة على الشاشة ، دعنا نقول كلمة "HELLO" ، 10 مرات. ماذا يجب ان نفعل؟
يمكنك أخذ وكتابة الأمر 10 مرات writeln (& # 39 ؛ HELLO & # 39 ؛) ؛

ولكن ماذا لو لم تكن بحاجة إلى 10 مرات ، بل 20 ، 30 ، 40 مرة؟ ، وإذا كنت بحاجة إلى 200 مرة؟ في هذه الحالة ، سيستغرق النسخ وقتًا طويلاً. وإذا كان من الضروري أن يختار المستخدم عدد المرات لعرض المعلومات على الشاشة؟ & nbsp؛

للتعامل مع هذه المهمة ، يمكننا استخدام بنية خاصة تسمى LOOP

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


في لغة برمجة باسكال ، هناك نوعان من الحلقات: حلقة بها متغير (for) وحلقة بشرط (while)

لنبدأ التعرف على دورات من النوع الأول.

الحلقات المتغيرة أو بعدد معروف من الخطوات (لـ)

غالبًا ما يحدث أننا نعرف عدد التكرارات لبعض الإجراءات ، أو يمكننا حساب عدد التكرارات باستخدام البيانات المعروفة لدينا. تحتوي بعض لغات البرمجة على أمر يبدو في اللغة الروسية مثل REPEAT (عدد المرات) - أي يمكننا تحديد العدد الدقيق للتكرار. & nbsp؛

من المثير للاهتمام أن نرى كيف تعمل هذه الدورة على مستوى الماكينة:
1. يتم تخصيص خلية ذاكرة معينة في الذاكرة ويتم كتابة عدد التكرارات عليها ،
2. عندما ينفذ البرنامج جسم الحلقة مرة واحدة ، فإن محتويات هذه الخلية (العداد) تتناقص بواحد.
3. ينتهي تنفيذ الحلقة عندما تكون هذه الخلية صفراً.

في لغة البرمجة باسكال ، لا يوجد مثل هذا البناء ، لكن هناك بنية للبناء. نبسب ؛

الشكل العام لبيان الحلقة for هو كما يلي: <قبل> لـ * قيمة البداية * إلى * قيمة النهاية * تفعل يبدأ / * عبارة واحدة أو مجموعة من العبارات - loop body * /؛ end؛ هذا البناء يتطلب منا
1. تخصيص خلية ذاكرة بشكل صريح ، والتي ستكون عدادًا ، وتعيين قيمتها الأولية
2. حدد كيف ستتغير القيمة في هذه الخلية.
3. تم كتابة شرط يتم بموجبه تنفيذ جسم الحلقة

في الجزء العملي ، سنحاول عرض كلمة Hello 10 مرات. في المهام التالية ، سنقوم بتحليل هذا البناء بمزيد من التفصيل.

Problem

البرنامج التالي يعرض كلمة مرحبًا 10 مرات.
يرجى ملاحظة أننا أكملنا 3 خطوات ضرورية

1. خصص صراحة خلية ذاكرة ستكون عدادًا وأدخل القيمة الأولية فيها & nbsp؛ - i: = 1 & nbsp؛
2. أوضح كيف ستتغير القيمة في الخلية المحددة - إلى & nbsp ؛ - بعد تنفيذ جسم الحلقة ، ستزيد قيمة المتغير i بمقدار 1
3. سجل القيمة الأخيرة التي سيتم تنفيذ جسم الدورة عندها - 10 & nbsp؛ - & nbsp؛ سيتم تنفيذ loop body (الأمر writeln) طالما أن i أقل من أو يساوي 10

شغّل البرنامج ، تأكد من أنه يعرض الكلمة "مرحبًا" 10 مرات