التعليم السعودي

الحلقتين While و Do While في الخوارزميات – التمرين الثاني 

الحلقتين While و Do While في الخوارزميات – التمرين الثانيالحلقتين While و Do While في الخوارزميات – التمرين الثاني
الحلقتين While و Do While في الخوارزميات – التمرين الثاني
الحلقتين While و Do While في الخوارزميات – التمرين الثاني
الحلقتين While و Do While في الخوارزميات – التمرين الثاني

المناهج السعودية

الحلقتين While و Do While في الخوارزميات – التمرين الثاني

المطلوب

أكتب برنامج يقوم بضرب جميع الأرقام من 1 إلى 10 و يعرض فقط المجموع النهائي بثلاث طرق.

إرشادات

الـ M هو المتغير الذي سيحتوي على كل الأرقام المضروبة.
الـ i هو المتغير ( العداد ) الذي يزيد واحد في كل دورة.
الـ M تساوي ضرب كل قيم الـ i.

النتيجة المطلوبة

الخوارزمية

مراجعة لما حدث في الذاكرة

كود الجافا

  1. package multipleloops;
  2. public class MultipleLoops {
  3.     public static void main (String[] args) {
  4.             // هنا قمنا بتعريف المتغيرات في أول البرنامج لأننا سنستخدمهم نفسهم في جميع الحلقات
  5.             int i = 1;
  6.             int M = 1;
  7.             // ” for ” الطريقة الأولى باستخدام الحلقة
  8.             System.out.print(“1- using for loop:\n”);
  9.             for ( ; i<=10; i=i+1 )
  10.             {
  11.                 M = M * i;
  12.             }
  13.             System.out.print(“The multiple is: “ + M + “\n”);
  14.             System.out.print(“———————————–\n”);
  15.             // ” while ” الطريقة الثانية باستخدام الحلقة
  16.             System.out.print(“2- using while loop:\n”);
  17.             M = 1;
  18.             i = 1;
  19.             while ( i<=10 )
  20.             {
  21.                 M = M * i;
  22.                 i = i + 1;
  23.             }
  24.             System.out.print(“The multiple is: “ + M + “\n”);
  25.             System.out.print(“———————————–\n”);
  26.             // ” do while ” الطريقة الثانية باستخدام الحلقة
  27.             System.out.print(“3- using do while loop:\n”);
  28.             M = 1;
  29.             i = 1;
  30.             do
  31.             {
  32.                 M = M * i;
  33.                 i = i + 1;
  34.             }
  35.             while ( i<=10 );
  36.             System.out.print(“The multiple is: “ + M + “\n”);
  37.             System.out.print(“———————————–\n”);
  38.     }
  39. }

شرح الكود

    • ملاحظة: الشروحات الموضوعة بالعربية فوق كل كود لا تؤثر أبداً عليه لأنها موضوعة كتعليقات كما قلنا سابقاً.
    • البرنامج MultipleLoops يحتوي على ثلاث حلقات تعمل بنفس الطريقة.
int i = 1;
int M = 1;
    • في بداية البرنامج قمنا بتعريف المتغيرين i و M لأننا نريد استخدامهم في كل حلقة سننشأها.
    • إذاً تستطيع إنشاء المتغير الذي ستستخدمه كعداد في بداية البرنامج و تستخدمه من جديد كلما أردت ذلك.
i = 1;
M = 1;
    • قبل أن نستخدم المتغيرين i و M في أي حلقة كنا نعيد قيمهم إلى كما كانت عليه في البداية.
System.out.print(“The multiple is: “ + M + “\n”);
    • بعد كل حلقة قمنا بتعريفها في البرنامج, قمنا باستخدام أمر الطباعة هذا لعرض قيمة المتغير M بعد أن تم وضع ناتج ضرب جميع الأرقام من 1 إلى 10 فيه.
  1. for ( ; i<=10; i=i+1 )
  • هنا قمنا بتعريف عداد الحلقة for قبل تعريف الحلقة و ليس بداخلها.
  • ملاحظة: يمكن تعريف الحلقة for بطرق مختلفة في لغات البرمجة لكن بشكل عام يجب أن يكون هناك إثنين ; ; بين أقواسها و إلا سؤدي ذلك إلى ظهور خطأ في الكود.
    إضافةً إلى ذلك يجب المحافظة على مكان وضع العداد, الشرط, و طريقة ذيادة العداد فيها.
    فمثلاً, إذا قمت بوضع الشرط في المكان المخصص لتعريف العداد كالتالي   for ( i<=10; ; i=i+1 ) سيظهر لك خطأ.

 
المصدر: الحلقتين While و Do While في الخوارزميات – التمرين الثاني – المناهج السعودية

مقالات ذات صلة

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

زر الذهاب إلى الأعلى