JAVA 8:计算平均值

JAVA 8 : Calculate the mean

我在计算平均值时遇到问题

承认,我们需要知道平均投票数,所以我们将调查的投票数相加,然后求平均值。

所以如果我们有

Survey 1 : +1
Survey 2 : -1, -1, -1, +1
Survey 2 : +1

平均值为 (+1 -1 -1 -1 +1 +1) / 6 = 0

所以首先要修改的是所有调查的平均分数

Survey 1 : 1
Suveey 2 : -0,75
Survey 3 : 1 

然后计算调查的平均值(1 - 0,75 +1) / 3 to have 0.41

我计算每次调查的平均值如下,以第二次调查为例:

    int survey2[] = {-1, -1, -1, 1};
    int somme =  0;
    for (int nombre : survey2) {
        somme += nombre;
    }
    float moyenneSurvey2 = (float) somme /survey2.length;
    System.out.println(moyenneSurvey2);

但我的结果是 -0.5 而不是 -0.75,这是错误的

你的问题是数学问题,不是编程问题。

您认为调查 2 的平均值应该为 -0.75,但实际上不应该。它的平均值应该是 -0.5。让我告诉你为什么。

sum of survey 2 = -1 + -1 + -1 + 1
sum of survey 2 = ( -1 + -1 ) + ( -1 + 1 )
sum of survey 2 = -2 + 0
sum of survey 2 = -2

count of survey 2 = 1 + 1 + 1 + 1
count of survey 2 = 4

mean of survey 2 = (sum of survey 2) / (count of survey 2) 
mean of survey 2 = ( -2 ) / ( 4 )
mean of survey 2 = -0.5

这是编程中的重要一课。如果你构建了一个单元测试(即使你没有对这个程序进行单元测试,你基本上构建了一个你手动遵循的单元测试),你的测试中可能会有错误(以及你的程序中的错误)。

祝你好运,祝你的程序成功。