المطلوب
أكتب نفس البرنامج السابق بطريقة ثانية, الشكل المطلوب رسمه هو التالي
كود الجافا
public class Stars { public static void main (String[] args) { for (int i=5; i>=1; i--) { for (int j=1; j <=i; j++) { System.out.print("* "); } System.out.print("\n"); } } }
شرح الكود
for (int i=5; i>=1; i--)
الحلقة i
تعني أنه عندنا 5 أسطر.
كما تلاحظ أن هذه المرة الأولى التي نجعل فيها قيمة العداد i
تقل في كل دورة بدل أن تزيد.
for (int j=1; j <=i; j++) { System.out.print("* "); }
هنا الحلقة j
مرتبطة فقط بالعداد i
, و كما تلاحظ فإن معادلة الـ j
غير معقدة كما كتبناها في التمرين السابق.
هنا قلنا أنه في كل سطر سيكون عدد أعمدة الحلقة j
يساوي قيمة العداد i
.
بما أن العداد i
يبدأ من 5 وصولاً إلى 1 كانت النتيجة كالتالي:
في دورة الحلقة
i
الأولى, كانت قيمة العدادi
تساوي 5 فكان عدد دورات الحلقةj
يساوي 5. لذلك تم طباعة* * * * *
.في دورة الحلقة
i
الثانية, كانت قيمة العدادi
تساوي 4 فكان عدد دورات الحلقةj
يساوي 4. لذلك تم طباعة* * * *
.في دورة الحلقة
i
الثالثة, كانت قيمة العدادi
تساوي 3 فكان عدد دورات الحلقةj
يساوي 3. لذلك تم طباعة* * *
.في دورة الحلقة
i
الرابعة, كانت قيمة العدادi
تساوي 2 فكان عدد دورات الحلقةj
يساوي 2. لذلك تم طباعة* *
.في دورة الحلقة
i
الخامسة, كانت قيمة العدادi
تساوي 1 فكان عدد دورات الحلقةj
يساوي 1. لذلك تم طباعة*
.