如何在javascript中找到平均值?

如何在javascript中找到平均值?,javascript,Javascript,因此,我对JavaScript相当陌生,但我似乎无法在代码中找到平均值。我想了解为什么我的平均值不起作用。有什么可以帮你们的吗 函数getEvenOdd(){ var oddSum=0; var-evenSum=0; var num=0; var-evenAvg=0; var oddAvg=0; while(true){ num=parseInt(提示(“输入一个数字(-1以退出)”); 如果(num==-1){ 打破 } 如果(数值%2==0){ evenSum+=num; }否则{ odd

因此,我对JavaScript相当陌生,但我似乎无法在代码中找到平均值。我想了解为什么我的平均值不起作用。有什么可以帮你们的吗

函数getEvenOdd(){ var oddSum=0; var-evenSum=0; var num=0; var-evenAvg=0; var oddAvg=0; while(true){ num=parseInt(提示(“输入一个数字(-1以退出)”); 如果(num==-1){ 打破 } 如果(数值%2==0){ evenSum+=num; }否则{ oddSum+=num; } evenAvg=evenSum/num; oddAvg=oddSum/num; } 警报(“所有偶数之和为:“+evenSum”); 警报(“所有奇数之和为:“+oddSum”); 警报(“所有偶数的平均值为:“+evenAvg”); 警报(“所有奇数的平均值为:“+oddAvg”);
}在代码上,要计算
oddAvg
evenAvg
,需要将
evenSum
oddSum
除以
num
变量(从
提示符输入)

如您所知,
平均值
=
总和
/
总计数
,因此将总和除以输入的
数字
变量是不对的

相反,您需要计算
奇数
偶数
的计数,并将
偶数
奇数
和除以
偶数
奇数
计数,如下所示

函数getEvenOdd(){ var oddSum=0; var-evenSum=0; var num=0; var-evenAvg=0; var oddAvg=0; var-evenCount=0; var-oddCount=0; while(true){ num=parseInt(提示(“输入一个数字(-1以退出)”); 如果(num==-1){ 打破 } 如果(数值%2==0){ evenSum+=num; evenCount++; }否则{ oddSum+=num; oddCount++; } } evenAvg=evenSum/evenCount; oddAvg=oddSum/oddCount; 警报(“所有偶数之和为:“+evenSum”); 警报(“所有奇数之和为:“+oddSum”); 警报(“所有偶数的平均值为:“+evenAvg”); 警报(“所有奇数的平均值为:“+oddAvg”); }
getEvenOdd()这些操作是将
evenSum
oddSum
除以最后一次输入的
num

evenAvg = evenSum / num; 
oddAvg = oddSum / num; 

您应该将总和除以偶数或奇数输入数。

使用偶数和/输入数计数代替偶数和/num。

这个解决方案怎么样?它的目标是将奇数和偶数存储到奇数列表和偶数列表中

函数getEvenOdd(){ var-evenAvg=0; var oddAvg=0; var-oddList=[]; var-evenList=[]; var num=0; while(true){ num=parseInt(提示(“输入一个数字(-1以退出)”); 如果(num==-1){ 打破 } 如果(数值%2==0){ push(parseInt(num)); }否则{ push(parseInt(num)); } evenAvg=evenList.reduce((p,c)=>p+c,0)/evenList.length; oddAvg=oddList.reduce((p,c)=>p+c,0)/oddList.length; } 警报(“所有偶数的总和为:“+evenList.length”); 警报(“所有奇数的总和为:“+oddList.length”); 警报(“所有偶数的平均值为:“+evenAvg”); 警报(“所有奇数的平均值为:“+oddAvg”); }
getEvenOdd()您的问题不是如何使用javascript,而是平均值是多少-平均值是值的总数除以值的数量-您的代码将值的总数除以最后输入的数字。。。所以8,4,2,10的平均值是(8+4+2+10)/4。。。不是(8+4+2+10)/10