اذهب إلى المحتوى

السؤال

Recommended Posts

  • 1
نشر (معدل)

تحياتي أستاذ عباس.

الكود المكتوب به أخطاء، ولكن يبدو أن ما يجب أن يقوم بعمله هو حساب المجموع والمتوسط لأول n من الأعداد، والمطلوب تحويله إلى مجموعة من الدوال.

يمكن عمل الآتي كالتالي:

أولا عمل دالة تقوم بحساب مجموع أول n من الأعداد:

int get_sum(int n){
    int sum =0;
  for(int j=1; j<=n; j++) {
        sum = sum + j;
  }
  return sum;
}

وفيها نقوم بعمل loop ونقوم بجمع عداد الloop كل مرة وأضافته على المجموع، وبإنتهاء الloop نكون قد حصلنا على المجموع.

ثانياً عمل دالة تقوم بحساب المتوسط لأول n من الأعداد، وتقوم بداخلها بإستخدام الدالة sum كالآتي:

float get_avg(int n){
    int sum;
    float avg;
    
  avg = (float)get_sum(n)/n;
  return avg;
      
}

وفيها قمنا بحساب المتوسط لأول n من الأعداد وهو حسب التعريف المجموع مقسوم على العدد، بالتالي قمنا بإستخدام دالة حساب المجموع، وقمنا بالقسمة على n، مع مراعاة عمل casting إلى النوع float عند قسمة integer على integer  لنحتفظ بالأجزاء العشرية.

ويمكن إستخدامهم من الدالة main كالآتي:

int main()
{
  int n;
  float avg;
  
  cout<<" Enter N : ";
  cin>>n;



  cout<<" The sum= "<<get_sum(n)<<endl;
  cout<<" The average= "<<get_avg(n)<<endl;

return 0;
}

وفيها قمنا بطلب إدخال عدد من المستخدم، وبعد إدخال العدد قمنا بإستخدام الدالتين الذي قمنا بتعريفهم لحساب المجموع وحساب المتوسط، وطباعة النتيجتين.

الكود بالكامل موجود هنا.

بالتوفيق.

تم التعديل في بواسطة مصطفى القباني

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...