التعليم السعودي
العوامل في الخوارزميات – التمرين الخامس
جدول المحتويات
العوامل في الخوارزميات – التمرين الخامس
العوامل في الخوارزميات – التمرين الخامس
العوامل في الخوارزميات – التمرين الخامس
العوامل في الخوارزميات – التمرين الخامس
العوامل في الخوارزميات – التمرين الخامس
العوامل في الخوارزميات – التمرين الخامس
المطلوب
أكتب برنامج لحساب قيمة المتغير S
النهائية.
إجعل البرنامج يظهر لك قيمة العداد و قيمة المتغير S
في كل دورة.
كود الجافا
- package sum_odd_and_even_numbers;
- public class Sum_Odd_And_Even_Numbers {
- public static void main (String[] args) {
- int S=0;
- for (int i=1; i<=10; i++)
- {
- if ( i%2 == 1)
- {
- System.out.print(“S = “ +S+ ” + “ +i+ ” = “+(S+i)+“\n”);
- S = S + i;
- }
- else if ( i%2 == 0)
- {
- System.out.print(“S = “ +S+ ” – “ +i+ ” = “+(S-i)+“\n”);
- S = S – i;
- }
- }
- System.out.print(“\n”);
- }
- }
شرح الكود
-
- هنا قمنا بتعريف المتغير
S
لتخزين المجموع لذلك أعطيناه القيمة 0 كقيمة أولية.
- هنا قمنا بتعريف المتغير
- int S=0;
-
- قمنا بإنشاء حلقة من 1 إلى 10 و في كل دورة تزيد قيمة العداد 1.
- في كل دورة يقوم البرنامج بفحص قيمة الـ
i
يسأل نفسه: هل هي عدد مفرد ؟
إذا لم تكن عدد مفرد ينتقل إلى الشرط الثاني, فيسأل نفسه: هل هي عدد مزدوج؟
– إذا كانت قيمة العدادi
مفردة سيقوم بزيادتها على قيمة الـS
– إذا كانت قيمة العدادi
مزدوجة سيقوم بإنقاصها من قيمة الـS
- for (int i=1; i<=10; i++)
- {
- if ( i%2 == 1)
- {
- System.out.print(“S = “ +S+ ” + “ +i+ ” = “+(S+i)+“\n”);
- S = S + i;
- }
- else if ( i%2 == 0)
- {
- System.out.print(“S = “ +S+ ” – “ +i+ ” = “+(S-i)+“\n”);
- S = S – i;
- }
- }
-
- ملاحظة: في المنطق إذا لم يكن الرقم مفرد فإنه حتماً مزدوج.
إذاً كان بإمكاننا وضع جملةelse
بدل جملة الـelse if
في الواقع هنا يفضل وضعelse
لكي لا تجعل الكمبيوتر يقوم بتحليل قيمة العداد ليعرف إذا كانت مزدوجة أم لا.
لأنها حتماً ستكون مزدوجة إذا قام بفحصها أولاً و لم يجدها مفردة. - إذا أردت أن يكون الكود ممتازاً فعليك كتابة البرنامج بهذه الطريقة:
- ملاحظة: في المنطق إذا لم يكن الرقم مفرد فإنه حتماً مزدوج.
- package sum_odd_and_even_numbers;
- public class Sum_Odd_And_Even_Numbers {
- public static void main (String[] args) {
- int S=0;
- for (int i=1; i<=10; i++)
- {
- if ( i%2 == 1)
- {
- System.out.print(“S = “ +S+ ” + “ +i+ ” = “+(S+i)+“\n”);
- S = S + i;
- }
- else
- {
- System.out.print(“S = “ +S+ ” – “ +i+ ” = “+(S-i)+“\n”);
- S = S – i;
- }
- }
- System.out.print(“\n”);
- }
- }
المصدر: العوامل في الخوارزميات – التمرين الخامس – المناهج السعودية