الخوارزمياتالحلقتين while و do while
- أهداف الدرس
- الفرق بين الحلقات
for,while,do while - المبادئ الأساسية لعمليات الجمع و الضرب في الحلقات
- تمارين شاملة حول الحلقات
for,while,do while
أهداف الدرس
سنقوم الآن باستخدام الحلقات for, while, do while في كل تمرين حتى تفهمهم بشكل جيد.
ستلاحظ أيضاً أننا قمنا بتعريف العداد الذي سنستخدمه في الحلقة for قبل تعريفها, لكننا قمنا بتحديد من أي رقم تبدأ و عند أي رقم تنتهي بداخلها.
الهدف فقط من هذا الأسلوب الجديد جعلك ترى أنه يمكنك كتابة الكود بأساليب كثيرة جداً و الحصول على نفس النتيجة.
نصيحة
أعد كتابة كل تمرين مرتين على الأقل, و حاول دائماً أن تحلل و تكتب الكود قبل أن تنظر إلى الحل الجاهز.
إذا قضيت يوماً كاملاً و أنت تحاول أن تحلل التمارين, أفضل بكثير من أن تنظر إلى الحل مباشرةً.
الفرق بين الحلقات for, while, do while
في حال أردت إنشاء حلقة تتألف من 5 دورات, سيكون شكل الحلقة كالتالي.
توضيح الفروقات بين الحلقات الثلاثة
- في الحلقة
forتستطيع تعريف المتغير الذي ستستخدمه كعداد و وضع الشرط الذي يحدد أين تتوقف الحلقة و إضافة قيمة العداد على نفس السطر. - في الحلقتين
whileوdo whileأنت مجبر على أن تعرف المتغير الذي ستستخدمه كعداد مع تحديد قيمته قبل كتابة الحلقة. - في الحلقتين
whileوdo whileأنت مجبر على أن تزيد قيمة العداد في نهاية كل دورة. - في الحلقتين
forوwhileيقوم الكمبيوتر بالتشييك على قيمة العداد قبل أن يبدأ في تنفيذ الكود, و على أساسها يحدد إذا كان سيبدأ بدورة جديدة أم لا. - في الحلقة
do whileيقوم الكمبيوتر بالتشييك على قيمة العداد بعد إنتهاء الكود من أجل الدورة التالية. - في الحلقة
do whileأنت مجبر أن تضع فاصلة منقوطة بعد الـwhileو إلا سيسبب لك مشكلة في الكود لأنه سيظن أنك تريد تعريف حلقةwhileجديدة و ليس إغلاق الحلقةdo while.
المبادئ الأساسية لعمليات الجمع و الضرب في الحلقات
في عمليات الجمع نحتاج متغير لنضع فيه ناتج الجمع في كل دورة, لذلك نعطيه صفر كقيمة أولية لأن الصفر لا يؤثر في عمليات الجمع.
مثال
int S = 0;
في عمليات الضرب نحتاج متغير لنضع فيه ناتج الضرب في كل دورة, لذلك نعطيه واحد كقيمة أولية لأن الواحد لا يؤثر في عمليات الضرب.
مثال
int M = 1;
لا تقلق ستفهم فكرة القيم الأولية 0 و 1 لاحقاً من التمارين.
تمارين شاملة حول الحلقات for, while, do while
التمرين الأول
أكتب برنامج يقوم بجمع جميع الأرقام من 1 إلى 100 و يعرض فقط المجموع النهائي بثلاث طرق.
أكتب كل طريقة في برنامج.
التمرين الثاني
أكتب برنامج يقوم بضرب جميع الأرقام من 1 إلى 10 و يعرض فقط المجموع النهائي بثلاث طرق.
التمرين الثالث
أكتب برنامج يظهر القيمة النهائية لـS.