الخوارزميات العوامل - التمرين الثاني

المطلوب

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

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


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

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

  • إذاً, هنا قررنا إنشاء حلقة تتألف من 10 دورات و في نهاية كل دورة تزيد قيمة العداد فيها 1.
  • الفكرة المهمة هنا أننا سنفحص قيمة العداد في كل دورة, إذا كانت عبارة عن عدد مفرد سنضيفها على المتغير S, و إذا لم تكن كذلك لن نفعل شيئ.

الخوارزمية

كود الجافا

public class Sum_Odd_Numbers {
 
    public static void main (String[] args) {
 
        int S=0;
 
        for (int i=1; i<11; i++)
        {
            if (i%2 == 1)
            {
                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++)
		{
			if (i%2 == 1)
			{
				System.out.print("S = " +S+ " + " +i+ " = " +(S+i)+ "\n");
				S = S + i;
			}
		}
			
  • الحلقة for (int i=1; i<11; i++) تعني أنه عندنا 10 دورات و في نهاية كل دورة تزيد قيمة العداد 1.
  • جملة الشرط if (i%2 == 1) تعني أنه إذا كانت قيمة العداد i عبارة عن عدد مفرد, سيتم تنفيذ أمر الطباعة و إضافة قيمة العداد على قيمة المتغير S.

نرجو منك الإنتقال لدورة البرمجة للمبتدئين الجديدة التي أنشأنها كبديل أفضل لهذه الدورة ففي تلك الدورة قمنا بتبسيط الشرح أكثر و جعلناك قادر على تجربة الكود بشكل مباشر في موقعنا.

دورة تعلم البرمجة للمبتدئين >

الدورات

أدوات مساعدة

أقسام الموقع

دورات
مقالات كتب مشاريع أسئلة