Module: (C ++) الحلقات. حلقة مع معلمة (من أجل)


Problem

10/17

رأس حلقة for - تكرار N- مرات

Theory Click to read/hide

كرر N مرات لا يمكن تسمية جميع البرامج ذات الحلقة for التي كتبناها حتى الآن بأنها عالمية. لأننا حددنا لأنفسنا عدد التكرارات لجسم الحلقة. ولكن ماذا لو كان عدد التكرارات يعتمد على قيمة أخرى؟ على سبيل المثال ، يريد المستخدم نفسه تحديد عدد مرات تكرار الدورة.
ماذا تفعل في هذه الحالة؟ كل شيء بسيط للغاية. بدلاً من قيم البداية والنهاية الرقمية ، يمكننا استخدام أي متغيرات يمكن حسابها أو تعيينها بواسطة المستخدم.

على سبيل المثال ، نحتاج إلى عرض مربعات الأرقام من 1 إلى N ، حيث يتم إدخال قيمة المتغير N من لوحة المفاتيح بواسطة المستخدم.
سيبدو البرنامج كالتالي:
نبسب ؛ # تضمين & lt؛ iostream & gt؛ استخدام اسم للمحطة؛ رئيسي() { int أنا ، N ؛ // أنا & - متغير الحلقة ، N - العدد الأقصى الذي نحسب له المربع سينما & GT ؛ & GT. ن؛ لـ (i = 1 ؛ i & lt ؛ = N ؛ i ++) // حلقة: بالنسبة للجميع أنا من 1 إلى N. المتغير أنا سأأخذ قيمًا بالتسلسل من 1 إلى N { كوت & lt؛ & lt؛ & quot؛ رقم مربع & quot؛ & lt؛ & lt؛ i & lt؛ & lt؛ & quot؛ هو & quot؛ & lt؛ & lt؛ i * i & lt؛ & lt؛ & quot؛ \ n & quot ؛؛ // إخراج مربع الرقم بتنسيق معين والانتقال إلى سطر جديد } } عند إدخال الحلقة ، يتم تنفيذ العبارة i = 1 ، ثم تتم زيادة المتغير i بواحد مع كل خطوة ( i ++ ). يتم تنفيذ الحلقة بينما الشرط i & lt؛ = N صحيح. في جسم الحلقة ، تقوم عبارة الإخراج الوحيدة بطباعة الرقم نفسه ومربعه على الشاشة وفقًا للتنسيق المحدد.
للتربيع أو الأسس المنخفضة الأخرى ، من الأفضل استخدام الضرب.

شغّل البرنامج وشاهد نتيجة عمله بقيم مختلفة للمتغير N .

Problem

قم بتشغيل البرنامج للتنفيذ ، راجع نتيجة عمله بقيم مختلفة للمتغير N .

تحليل الناتج.

لاحظ أنه عند N = 0 (اختبار # 4) لا يُخرج البرنامج أي شيء ، لأن الشرط i & lt؛ = N خطأ على الفور في المرة الأولى التي يتم فيها تنفيذ الحلقة ( 1 & lt؛ = 0 هو شرط خاطئ) ، لذلك لا يتم تنفيذ جسم الحلقة!