حاسبة متوسط ​​الدرجة المرجحة


ما متوسط ​​درجتي المرجحة إذا كان لدي درجات في ثلاث مواد على التوالي 67،54،98 بوزن 32،12،45 على التوالي. أعرف الصيغة =(67*32)+(54*12)+(98*45)/(32+12+45) لكني لا أعرف كيف تعمل إذا كنت أستخدم الحلقة.

الحل 1

الحل أ،

يمكنك استخدام صفيفين. واحد للأرقام وواحد للأوزان المقابلة.

ج #
public double[] _number = new double[] {67,54,98};
public double[] _weights = new double[] {32,12,45};

then: 

double _wavg = 0;

for(int i = 0; i < _number.Count(); i++)
{
   _wavg += ((_number[i] * _weight[i]) / (_weights.Sum())

}

الحل ب،

يمكنك استخدام فئة محددة مسبقًا لتخزين أوزان أرقامك النهائية

ج #
public class WeightedNumber
{
   public double Number {get; set; }
   public double Weight{get; set; }

}

List<wightednumber> _numbers;</wightednumber>

والباقي يبدو أكثر أو أقل نفس الشيء

الحل 2

يمكنك استخدام الدرجات، أي {67، 54، 98} لوضع حلقة مثل ما يلي

ج #
var _average = 0;
for(int i = 0; i < scores.Count(); i++)
{
   _average += ((scores[i] * weights[i]))

}
_average = (_average/ (weights.Sum()) * 100;

اقرأ المقالات أدناه لمعرفة كيفية عمل الصيغة فعليًا والطرق المختلفة لحسابها:
شرط, صيغة محددة

コメント

タイトルとURLをコピーしました