J'ai une ArrayList d'entiers: [11, 15, 10, 19, 9, 1, 2, 16] et je ne peux pas sembler retourner la bonne réponse.Calculer la déviation standard en utilisant Java?
Mon code:
static double Q2(ArrayList<Integer> input) {
Collections.sort(input);
ArrayList<Double> input2 = new ArrayList<>();
double sum = 0;
double sum2 = 0;
double sd = 0;
for (int i = 0; i < input.size(); i++) {
sum = sum + input.get(i);
}
double mean = sum/input.size();
for (int i = 0; i < input.size(); i++) {
input2.add((Math.pow((input.get(i) - mean), 2)));
}
for (int i = 0; i < input2.size(); i++) {
sum2 = sum2 + input2.get(i);
}
double mean2 = sum2/input2.size();
sd = Math.sqrt(mean2);
return sd;
La sortie devrait être prévue: 5,998697775350913
Ma sortie est: 6,010407640085654
Merci pour votre temps, beaucoup apprécié.
J'ai obtenu la bonne sortie en utilisant votre code. http://ideone.com/XmTDb2 – jyotesh
J'ai simplifié votre code: http://ideone.com/hWTBgi. Le résultat est 5.998697775350913 – Zefick
Peut-être que le problème est dans votre saisie, vérifiez que c'est la même liste que vous publiez ici. – sirandy