只给出了错误的答案而我却找不到原因?这只是代码的一部分,但其余部分是复制粘贴的,所以它做同样的事情。我试图调整它,并找到一个在线解决方案,但一切似乎都在秩序。可能计数器不正确,不能处理负数?答案总是107.19999999。
public class draft3 {
public static void main (String []args) {
/* Create arrays for each company*/
int NL5755[] = new int[] {60, 70, -10, -12, 10};
//Assign a value of 0 to total
double sum = 0;
double average1=0;
{
/*Use a counter. For i smaller than the*/
/*value of the length of the array, add them to sum*/
for(int i=0; i<NL5755.length; i++)
{
sum = sum + NL5755[i];
average1 += sum / NL5755.length;
}
3条答案
按热度按时间sz81bmfz1#
你没有正确使用括号。
ig9co6j12#
计算平均值
array of numbers
:首先你需要把所有的数字相加
把所有数字的和除以数字的计数。
注意:您的代码的问题是,您对循环的每次迭代都进行了平均:
wrrgggsh3#
其他人提到了这样一个事实:你应该把平均数的计算移到
for
循环,如果要在求和之后计算平均值,则为true。但是,如果要计算for
循环,可以使用在线算法(即“随走随走”)。那样的话,你就把你现在的average1
符合: