Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript代码将奇数和偶数分开,然后得到它们各自的总和和平均值_Javascript_Arrays - Fatal编程技术网

Javascript代码将奇数和偶数分开,然后得到它们各自的总和和平均值

Javascript代码将奇数和偶数分开,然后得到它们各自的总和和平均值,javascript,arrays,Javascript,Arrays,我有一段代码,要求用户指定数组的长度,在数组中存储一些值,然后将奇数和偶数分开。到目前为止,我已经做了所有的事情,但是我得到了一些不正确的输出。我已附上我的代码 //变量和数组声明 var arrayNum=[]//创建一个没有大小的数组 var arrayEven=[]//数组以容纳偶数 var arrayOdd=[]//用于保存奇数的数组 var i//变量来存储上面arrayNum的索引 var-NUM_输入//用于存储数组大小的变量,数组大小是元素数 var sumOdd=0.0//变

我有一段代码,要求用户指定数组的长度,在数组中存储一些值,然后将奇数和偶数分开。到目前为止,我已经做了所有的事情,但是我得到了一些不正确的输出。我已附上我的代码

//变量和数组声明 var arrayNum=[]//创建一个没有大小的数组 var arrayEven=[]//数组以容纳偶数 var arrayOdd=[]//用于保存奇数的数组 var i//变量来存储上面arrayNum的索引 var-NUM_输入//用于存储数组大小的变量,数组大小是元素数 var sumOdd=0.0//变量来存储奇数时的和 var Sumeen=0.0//变量来存储奇数时的和 var-avgO=0.0; var平均值=0.0; NUM_INPUTS=parseIntpromptEnter输入所需的输入数://请用户指定数组的大小 //用于将值输入数组的循环 对于i=0;idocument.write所有奇数之和为:+sumOdd+,奇数的平均值为+avgO 在这种情况下,向鸭子解释你的代码! 不,我不是开玩笑,这就是所谓的橡皮鸭调试

用户输入2作为要插入的数字计数

循环将迭代2次,并要求用户输入一个数字

用户输入1作为第一个数字

1是奇数,因此它被推送到arrayOdd,它也被加到sumOdd中,sumOdd是1

用户输入3作为第二个数字。因为它很奇怪,它也会被推到arrayOdd中。内部循环再次运行,在arrayOdd上迭代,获取第一个元素1并将其添加到sumOdd!,现在它是2,然后它取第二个元素3,把它加到sumOdd,sumOdd是5

但是等等。。。1和3的和是4,而不是5。将循环中的所有sumOdd和sum偶数相加似乎是一个错误


你在做下列错误的事情

您正在一次又一次地添加arrayOdd和ArrayEvent的所有以前的值。您应该将新值添加到sumOdd和sum偶数。 您正在计算所有输入完成前的平均值。您应该在循环结束时计算avgO和avgE。 var arrayNum=[]; var arrayEven=[]; var arrayOdd=[]; var i; var-NUM_输入; var sumOdd=0.0; var Sumeen=0.0; var-avgO=0.0; var平均值=0.0; NUM_INPUTS=parseIntpromptEnter输入所需的输入数:; 对于i=0;idocument.write所有奇数之和为:+sumOdd+,奇数的平均值为+avgO 我发现的错误是使用oddnum数组计算偶数

for (var y = 0; y < arrayOdd.length; y++) {
      sumEven += arrayEven[y];
    }
//变量和数组声明 var arrayNum=[]//创建一个没有大小的数组 var arrayEven=[]//数组以容纳偶数 var arrayOdd=[]//用于保存奇数的数组 var i//变量来存储上面arrayNum的索引 var-NUM_输入//用于存储数组大小的变量,数组大小是元素数 var sumOdd=0.0//变量来存储奇数时的和 var Sumeen=0.0//变量来存储奇数时的和 var-avgO=0.0; var平均值=0.0; NUM_INPUTS=parseIntpromptEnter输入所需的输入数://请用户指定数组的大小 //用于将值输入数组的循环 对于i=0;i记录。写下所有奇数的总和是:+sumOdd+,奇数的平均值是+avgo收集所有数字后,你应该将偶数和赔率相加。我相信我已经尽我所知做到了这一点。将元素插入各自的数组后检查for循环。ftwOMG!!!这是个愚蠢的错误,但谢谢你。我意识到我在哪里犯了错误。
 sumOdd += /* left as an exercise */;
for (var y = 0; y < arrayOdd.length; y++) {
      sumEven += arrayEven[y];
    }