المطلوب
أكتب برنامج مهمته جمع جميع الأعداد المفردة بين 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.





محرر الويب
نظام الألوان
محول الوحدات
محلل عناوين الشبكات