Algorithmsالعوامل في الخوارزميات - التمرين الأول

المطلوب

أكتب برنامج مهمته جمع جميع الأعداد المفردة بين 1 و 10.

لا تستخدم الـ Modulo.
إجعله يظهر قيمة العداد و قيمة المتغير S في كل دورة.


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

طريقة التحليل

  • إذاً هنا قررنا جعل قيمة العداد الأولية تساوي 1 و في نهاية كل دورة سيتم إضافة 2 عليها و هكذا ستظل دائماً قيمة العداد مفردة.

الخوارزمية

كود الجافا

public class Sum_Odd_Numbers {
 
    public static void main (String[] args) {
 
        int S=0;
 
        for (int i=1; i<11; i=i+2)
        {
            System.out.print("S = " +S+ " + " +i+ " = " +(S+i)+ "\n");
            S = S + i;
        }
 
        System.out.print("\n");
 
    }

}
		

شرح الكود


    		int S=0;
    				
  • هنا قمنا بتعريف المتغير S لتخزين المجموع لذلك أعطيناه القيمة 0 كقيمة أولية.



  • 		for (int i=1; i<11; i=i+2)
    				
  • هنا أنشأنا حلقة تبدأ من 1 إلى ما قبل الرقم 11 (أي من 1 إلى 10) و في نهاية كل دورة تزيد 2.

  • إذا كتبنا i<11 كأننا كتبنا تماماً i <=10 لأن الحلقة في الحالتين ستتوقف عندما تصبح قيمة العداد i تساوي 10.

  • هنا كما تلاحظ أعطينا العداد رقم 1 كقيمة أولية و أضفنا عليه 2 في نهاية كل دورة, و هكذا إستطعنا جعل قيمة الـ i مفردة في كل دورة.



  • 			System.out.print("S = " +S+ " + " +i+ " = " +(S+i)+ "\n");
    				
  • كل شيء مكتوب بين " " سيظهر كما هو عند تشغيل البرنامج, و كل شيء بدونهم ستظهر قيمته الحالية عند التشغيل.


  • طريقة كتابة هذا البرنامج تعتبر ممتازة, لأنك جعلت العداد يعمل بطريقة تجعلك تحصل على الأرقام المفردة بـ 5 دورات فقط.

دورات

أدوات