مدرسة جواكاديمي

هنا يمكنك تصفح مدرسة جو اكاديمي، المنهاج، اسئلة، شروحات، والكثير أيضاً

المجاميع الإجمالية

الحاسوب - الصف المواد المشتركة أول ثانوي

المجاميع الإجمالية

نحتاج في أحيانٍ كثيرة إيجاد حاصل جمع مجموعة كبيرة من الأعداد، فمثلا قد ترغب في إيجاد المتوسط الحسابي لعلامات طلبة صفك في مادة الحاسوب، ولتحقيق هذا يجب أولا أن تحسب مجموع علاماتهم، فيصعب عليك إعطاء اسم متغير لعلامة كل طالب لأنك تحتاج عندها إلى كم هائل من المتغيرات. لذا يمكن باستخدام جملة التكرار ومتغيرين اثنين أحدهما هو المتغير الذي نجمع قيمته، والآخر هو حاصل الجمع الإجمالي إيجاد المتوسط الحسابي للعلامات. ويمكن تحديد الخطوات التي يتبعها الحاسوب لتحقيق ذلك كالآتي:

المجاميع الإجمالية

مثال 1: اكتب برنامجًا بلغة ++c يقوم  بإدخال أربع علامات وإيجاد وطباعة مجموعهم.

1- سنعمل على إنشاء المتغير sum لإيجاد المجموع وسنقوم بتصفيره   int sum = 0 

2- سنرمز للعلامة باستخدام المتغير x.

3- القيمة الابتدائية للعداد هي 1 والشرط أن يكون العداد أقل أو يساوي 4 للعمل على إدخال 4 علامات. والزيادة الدورية بمقدار 1 فقط. 

حددنا الأفكار الرئيسة والآن سنجمعها في البرنامج الآتي: 

إيجاد مجموع 4 علامات

ناتج التنفيذ: 

ناتج تنفيذ البرنامج

مثال 2 : اكتب برنامج بلغة ++c يقوم بإيجاد وطباعة مجموع الأعداد من 1 إلى 6  باستخدام جملة التكرار for.

لاحظ أنه في هذا السؤال قام بإعطاء نقطة البداية والنهاية وأراد المجموع لهذه الأعداد، بالتالي أن غير محتاج لإدخال قيم لأنه يريد العمل على قيم العداد نفسه. بعكس السؤال السابع الذي طلب مجموع 4 علامات؛ من هنا عليك الاستنتاج أنه إذا قام بإعطائك القيمة الأولية والقيمة النهائية تُستخدم هذه القيم والعمل سيكون على متغير العداد بينما إذا قام بإعطاء عدد القيم الكلي فعليك بإدخال هذه القيم. 

مجموع الأعداد من 1 - 6 program

ناتج التنفيذ: 

مجموع الأعداد من 1 - 6 output

كيف يعمل البرنامج: 

أولًا يقوم بإنشاء المتغير i  وهو العداد، والمتغير sum وقام بتصفيره لتخزين المجموع. 

- قيمة i داخل العداد تساوي 1 ويختبر البرنامج الشرط - جواب الشرط هو True فيقوم بإضافة قيمة العداد i إلى المجموع فيصبح المجموع يساوي 1 ومن ثم تتغير قيمة العداد بزيادة 1 فتصبح قيمة i=2  يُعاد اختبار الشرط وناتجه True فيقوم بإضافة قيمة العداد إلى المجموع فتصبح قيمة sum= 3 .

يزداد العداد بمقدار 1 فيصبح 3.

هل 6 => 3 ؟ نعم إذًا تُنفذ الجملة فيصبح sum = 6

يزداد العداد بمقدار 1 فيصبح 4 

6 => 4 ؟ نعم

sum = 6 + 4 = 10

i = i+1 = 5

6 => 5 ؟ نعم

sum = 10 + 5 = 15

i= 5 + 1 = 6

هل 6 => 6 ؟ نعم 

sum = 15 + 6 = 21

i = 6 + 1 = 7

هل 6 => 7 ? لا يتوقف التكرار

يطبع البرنامج الجملة الأخيرة وهي 

sum = 21

نشاط (2-29): المجموع الإجمالي

بالتعاون مع أفراد مجموعتك نفذ الآتي:

  • أكتب برنامجا لإيجاد وطباعة مجموع الأعداد من 3 إلى 19.

program

  • قم ببناء البرنامج ونفذه، ماذا تلاحظ؟

output

- مجموع الأعداد من 3 - 19 والناتج هو 187

احفظ البرنامج  في ملف المجموعة.

نشاط (2-30): المجموع الإجمالي

بالتعاون مع أفراد مجموعتك نفذ الآتي:

  • أكتب برنامجاً لإيجاد وطباعة مجموع الأعداد الفردية من 20 إلى -15.

لاحظ أنه طلب مجموع الأعداد الفردية فقط. إذًا step ستكون العداد + 2 ولكن إذا بدأنا من العدد 20 فسنقوم بجمع الأعداد الزوجية فعلينا هنا أن نبدأ من عدد فردي هو الأقل لأضمن صحة الإجابة وهي 19. 

program

  • قم ببناء البرنامج ونفذه، ماذا تلاحظ؟

output

قيمة مجموع الأعداد الفردية من 19 - -15 يساوي 36 ويجب البدء بقيمة فردية وليس زوجية حسب المطلوب بالسؤال.

احفظ البرنامج  في ملف المجموعة.

مثال 3: اكتب برنامج بلغة ++c يقوم بإيجاد المتوسط الحسابي لعلامات طلبة صف مكوّن من 30 طالبًا في مادة الحاسوب وطباعته باستخدام جملة التكرار for.

لاحظ هنا أنه لم يعط قيماً محصورة بين قيمة ابتدائية وقيمة نهائية بل قام بإعطاء عدد طلبة الصف وهو 30. من هذه المعلومة يجب أن نعرف أننا يجب أن نستخدم متغير mark لعلامة الطلبة ونقوم بإدخالها 

30 قيمة المتغير الابتدائية 1  والشرط 30 =>c ويزداد بمقدار واحد

sum يُصفر بالبداية ومن ثم يُضاف إليه قيمة العلامة.

بعد انتهاء الدوران نقوم بقسمة مجموع علامات الطلبة على 30 لإيجاد قيمة المتوسط الحسابي.

program

مثال 4: اكتب برنامج بلغة ++c يقوم بإيجاد وطباعة مجموع نواتج قسمة الأعداد من 1 إلى 15 على العدد 2؟

1

لاحظ من هذه المتسلسلة أن القيمة الابتدائية هي 1 والشرط أن تكون أقل أو يساوي 15 

ولكن قيمة العداد مقسمة في كل مرة على 2.

program

لاحظ أن قيمة الإضافة على المتغير sum هي J/2  من خلال المتسلسلة وبالتالي جُمعت مباشرة إلى المتغير sum.

مثال 5: اكتب برنامج بلغة ++c يقوم بإيجاد وطباعة قيمة المتسلسلة الآتية:

        3 + 6 + 9 + 12 + … +  m

مقدار الزيادة على هذه المتسلسلة هي 3 والقيمة الابتدائية هي 3 ولكن القيمة النهائية مجهولة يجب علينا إدخالها قبل عملية الدوران. 

2 program

 

مثال 6: اكتب برنامج بلغة ++c يقوم بإيجاد وطباعة قيمة المتسلسلة الآتية:

المتسلسلة 3

لاحظ في هذا المثال أنّ القيمة الابتدائية هي 2 والقيمة النهائية هي n  قيمة مجهولة يجب إدخالها. وقاعدة المتسلسلة هي 1 / قيمة العداد.

program

نشاط (2-31): إيجاد وطباعة قيمة متسلسلة

بالتعاون مع أفراد مجموعتك نفذ الآتي:

  • اكتب برنامجاً لحساب وطباعة قيمة المتسلسلة الآتية:

(4+i)2 + (8+i)2 + (16+i)2 + … + (m+i)2

لاحظ أن:

  نفسها في قاعدة المتسلسلة يجب إدخالها. i قيمة 

العداد يتغير بمقدار c*2  في كل مرة. ولا ننسى تربيع القيمة. 

program

  • قم ببناء البرنامج ونفذه، ماذا تلاحظ؟

​​​​​​​

احفظ البرنامج في ملف المجموعة.