質問: []; for(var a =2; a<=num; a++){ arr.push(a); //ここでまず2~numまでのすべての数字を配列に入れて } for(var i=0; i<=arr.length; i++){ //配列に入れた数字を順番にチェックしていく for(var d=2; dsum+x); //最後に残った配列の数字を合計してreturn } ``` どの部分が原因かおわかりでしょうか。 教えていただければ幸いです。 どうぞよろしくお願いいたします。
回答: 致命的に問題なのはこの行です。 ``` arr.splice(i, 1); //その数字を配列から除く ``` あなたのコードでは`for(var i=0; i<=arr.length; i++)`で配列全体を検査している(ついでに言うと「配列全体」なら`i