[ad_1]
quelle est ma note moyenne pondérée si j’ai des notes dans trois matières respectivement de 67,54,98 avec un poids de respectivement 32,12,45. je connais la formule =(67*32)+(54*12)+(98*45)/(32+12+45) mais je ne sais pas comment ça marche si j’utilise la boucle for.
Solution 1
vous pouvez utiliser deux tableaux. Un pour les chiffres, un pour les poids correspondants.
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()) }
SolutionB,
Vous pouvez utiliser une classe prédéfinie pour stocker les poids finaux de vos nombres
public class WeightedNumber { public double Number {get; set; } public double Weight{get; set; } } List<wightednumber> _numbers;</wightednumber>
Le reste est plus ou moins pareil
Solution 2
vous pouvez utiliser les scores, c’est-à-dire {67, 54, 98} pour mettre une boucle for quelque chose comme ci-dessous
var _average = 0; for(int i = 0; i < scores.Count(); i++) { _average += ((scores[i] * weights[i])) } _average = (_average/ (weights.Sum()) * 100;
Lisez les articles ci-dessous pour savoir comment fonctionne réellement la formule et les différentes façons de la calculer :
article, formule spécifiée
[ad_2]
コメント