C++ افعل…أثناء التكرار مع الأمثلة

ما هي حلقة القيام أثناء العمل؟

تقوم حلقة do-while بتكرار جزء من ملف C++ البرنامج عدة مرات. في حلقة do-while، تتم إضافة تعبير الاختبار في أسفل الحلقة. يأتي جسم الحلقة قبل تعبير الاختبار. ولهذا السبب يجب تنفيذ نص الحلقة لمرة واحدة، حتى عندما يتم تقييم تعبير الاختبار إلى خطأ في الاختبار الأول.

متى تستخدم حلقة do-while؟

يجب استخدام حلقة do-while عندما لا يكون عدد التكرارات ثابتًا، ويجب تنفيذ الحلقة مرة واحدة على الأقل. ال C++ مترجم ينفذ نص الحلقة أولاً قبل تقييم الحالة. وهذا يعني أن الحلقة يجب أن ترجع نتيجة. وهذا هو الحال حتى عندما يتم تقييم حالة الاختبار على أنها خاطئة في التقييم الأول. وبما أن جسم الحلقة قد تم تنفيذه بالفعل، فيجب عليه إرجاع النتيجة.

بناء الجملة

بناء الجملة الأساسي ل C++ القيام أثناء الحلقة كما يلي:

do{    
//code 
}while(condition);  

الشرط هو اختبار التعبير. يجب أن يكون صحيحًا حتى يتم تنفيذ الحلقة. تشير العلامة { و } إلى نص حلقة do while. يأتي قبل الشرط. وبالتالي يتم تنفيذه قبل الشرط.

كيف تعمل حلقة do-while؟

افعل بينما حلقة
C++ افعل أثناء مخطط التدفق

شرح مخطط التدفق:

  1. بداية تنفيذ الحلقة.
  2. نص الفعل أثناء الحلقة.
  3. تعبير الاختبار أو الشرط المراد تقييمه.
  4. إذا كان تعبير الاختبار صحيحا، فإن C++ قام المترجم بتنفيذ نص تنفيذ الحلقة.
  5. إذا كان تعبير الاختبار خاطئًا، فإن C++ يقوم المترجم بتنفيذ العبارات بعد نص الحلقة.
  6. البيانات التي تأتي بعد هيئة الحلقة.

مثال 1

#include <iostream>
using namespace std;
int main() {
	// Local variable 
	int x = 1;
	do {
		cout << "X is: " << x << endl;
		x = x + 1;
	} while (x < 5);
	return 0;
}

الإخراج:

افعل بينما حلقة

فيما يلي لقطة شاشة للكود:

افعل بينما حلقة

شرح الكود:

  1. بما في ذلك ملف رأس iostream في التعليمات البرمجية الخاصة بنا. سيسمح لنا بالقراءة من وحدة التحكم والكتابة إليها.
  2. تضمين مساحة الاسم std لاستخدام فئاتها ووظائفها دون استدعائها.
  3. استدعاء الوظيفة الرئيسية () التي يجب إضافة منطق البرنامج بداخلها. تشير العلامة { إلى بداية نص الدالة main().
  4. تعليق. ال C++ سوف المترجم تخطي هذا.
  5. الإعلان عن متغير صحيح x وتعيينه بقيمة 1.
  6. إنشاء حلقة القيام بها. علامة { بداية جسم الحلقة.
  7. لطباعة قيمة المتغير x بجانب نص آخر على وحدة التحكم. النهاية هي أ C++ الكلمة الأساسية تعني خط النهاية.
  8. زيادة قيمة x بمقدار 1 بعد كل تكرار.
  9. نهاية جسم الحلقة. تمت إضافة تعبير الاختبار إلى نهاية نص الحلقة. يختبر ما إذا كانت قيمة x أقل من 5.
  10. يجب أن تقوم الدالة main() بإرجاع قيمة إذا كان البرنامج يعمل بشكل جيد.
  11. نهاية نص الدالة main().

مثال 2

#include <iostream>
using namespace std;
int main()
{
	int num, sum = 0;
	do {

		cout << "Enter a number: ";

		cin >> num;

		sum += num;

	} while (num != 0);
	cout << "Sum is " << sum;

	return 0;
}

الإخراج:

افعل بينما حلقة

فيما يلي لقطة شاشة للكود:

افعل بينما حلقة

شرح الكود:

  1. بما في ذلك ملف رأس iostream في التعليمات البرمجية الخاصة بنا. سيسمح لنا بالقراءة من وحدة التحكم والكتابة إليها.
  2. تضمين مساحة الاسم std لاستخدام فئاتها ووظائفها دون استدعائها.
  3. استدعاء الوظيفة الرئيسية () التي يجب إضافة منطق البرنامج بداخلها.
  4. تشير العلامة { إلى بداية نص الدالة main().
  5. الإعلان عن متغيرين صحيحين، num، وsum. تمت تهيئة المبلغ المتغير إلى 0.
  6. إنشاء حلقة القيام بها. علامة { بداية جسم الحلقة.
  7. طباعة النص "أدخل رقمًا:" على وحدة التحكم.
  8. قراءة مدخلات المستخدم من وحدة التحكم وتخزين القيمة في متغير num. إن cin (إدخال وحدة التحكم) هي وظيفة تقرأ إدخالات المستخدم.
  9. تؤدي إضافة قيمة num إلى قيمة المجموع وتخزينها إلى الحصول على مجموع متغير.
  10. تشير العلامة } إلى نهاية نص الحلقة. تمت إضافة تعبير الاختبار إلى نهاية نص الحلقة. يختبر ما إذا كانت القيمة التي أدخلها المستخدم صحيحة للتأكد من أنها ليست 0. يشير != إلى عدم تساوي المشغل. إذا أدخل المستخدم القيمة 0، فيجب إنهاء الحلقة.
  11. طباعة قيمة المبلغ المتغير على وحدة التحكم إلى جانب نص آخر.
  12. يجب أن تقوم الدالة main() بإرجاع قيمة إذا كان البرنامج يعمل بشكل جيد.
  13. نهاية نص الدالة main().

متداخلة تفعل أثناء الحلقة

In C++، من الممكن بالنسبة لنا إنشاء حلقة تنفيذ واحدة داخل حلقة تنفيذ كاملة أخرى. وينتج عن هذا حلقة عمل متداخلة.

بناء الجملة

do{
statement(s)
do{
statement(s)
}while(condition);
statement(s)
}while(condition);

تشير عبارة do الأولى إلى الجزء do من حلقة do-while الخارجية.

تشير عبارة do الثانية إلى جزء do من حلقة do-while الداخلية.

تشير عبارة while الأولى إلى حالة الاختبار للحلقة الداخلية.

تشير العبارة while الثانية إلى حالة الاختبار للحلقة الخارجية.

كيف يتم التداخل أثناء عمل الحلقة

تعمل حلقة do while المتداخلة على النحو التالي:

الخطوة الأولى: يتم تنفيذ التهيئة أولاً ومرة ​​واحدة.

الخطوة الأولى: يتم تنفيذ العبارات (do) مرة واحدة.

الخطوة الأولى: تعبير الاختبار هو التقييم عن طريق التحكم في التدفق.

الخطوة الأولى: إذا كان صحيحا، سيتم تنفيذ الحلقة الداخلية.

الخطوة الأولى: يتم تحديث بيان (بيانات) التحديث.

الخطوة الأولى: يتم تشغيل العملية بشكل متكرر حتى يصبح تعبير الاختبار خاطئًا.

الخطوة الأولى: عندما يصبح تعبير الاختبار خطأ، يتم الخروج من الحلقة الداخلية وينتقل التحكم إلى الحلقة الخارجية.

الخطوة الأولى: يتم تقييم حالة الاختبار مرة أخرى.

الخطوة الأولى: إذا كان صحيحًا، فسيتم تنفيذ العبارة (العبارات) لإرجاع خطأ.

الخطوة الأولى: تنفيذ توقفات الحلقة والتحكم في الانتقال إلى البيانات بعد الحلقة.

مثال

#include <iostream>  
using namespace std;
int main() {
	int a = 1;
	do {
		int b = 1;
		do {
			cout << a << "\n";
			b++;
		} while (b <= 3);
		a++;
	} while (a <= 3);
}

الإخراج:

متداخلة تفعل أثناء الحلقة

فيما يلي لقطة شاشة للكود:

متداخلة تفعل أثناء الحلقة

شرح الكود:

  1. بما في ذلك ملف رأس iostream في التعليمات البرمجية الخاصة بنا. سيسمح لنا بالقراءة من وحدة التحكم والكتابة إليها.
  2. تضمين مساحة الاسم std لاستخدام فئاتها ووظائفها دون استدعائها.
  3. استدعاء الوظيفة الرئيسية () التي يجب إضافة منطق البرنامج بداخلها. تشير العلامة { إلى بداية نص الدالة main().
  4. الإعلان عن متغير عدد صحيح a وتعيينه بقيمة 1.
  5. إنشاء حلقة do-while الخارجية. علامة { بداية جسم الحلقة الخارجية.
  6. الإعلان عن متغير صحيح b وتعيين قيمة له 1.
  7. إنشاء حلقة do-while الداخلية. يمثل { بداية جسم الحلقة الداخلية.
  8. لطباعة قيمة المتغير a على وحدة التحكم. "\n" هو حرف سطر جديد ينقل مؤشر الماوس إلى السطر التالي.
  9. زيادة قيمة b بمقدار 1 بعد كل تكرار.
  10. نهاية جسم الحلقة الداخلية. تمت إضافة تعبير الاختبار إلى نهاية نص الحلقة. يختبر ما إذا كانت قيمة b أقل من أو تساوي 5.
  11. زيادة قيمة a بمقدار 1 بعد كل تكرار.
  12. نهاية جسم الحلقة الخارجية. تمت إضافة تعبير الاختبار إلى نهاية نص الحلقة. يختبر ما إذا كانت قيمة a أقل من أو تساوي 3.
  13. نهاية نص الدالة main().

ملخص

  • تقوم حلقة do-while بتشغيل قسم من التعليمات البرمجية عدة مرات.
  • يجب استخدامه عندما يكون عدد التكرارات غير ثابت.
  • في حلقة do-while، يأتي جسم الحلقة قبل تعبير الاختبار.
  • يتم تنفيذ نص الحلقة مرة واحدة على الأقل، حتى لو أصبح تعبير الاختبار خاطئًا.
  • يجب استخدام هذه الحلقة عندما لا يكون عدد التكرارات ثابتًا.
  • يمكن تشغيل حلقة Do while لأي عدد من المرات، بشرط أن يكون الشرط صحيحًا.
  • يتم تقييم الحالة مرة واحدة بعد كل تكرار.
  • إن نتيجة تقييم الحالة تحدد الإجراء الذي سيتم اتخاذه.
  • إذا كان الشرط صحيحا، فإن الحلقة تنفذ الجسم.
  • يتوقف تنفيذ الحلقة على الفور ويتم تقييم الحالة إلى خطأ.
  • بما أن نص حلقة do while قد تم تنفيذه بالفعل، فيجب أن يُرجع النتيجة.

تلخيص هذه التدوينة بـ: