Не уверен, что здесь не так, но я пытаюсь добавить набор чисел в массиве (не весь массив), но, похоже, она подытоживает весь массив:Сумма в вложенных циклов возвращения неправильно
function sumPrimes(num) {
var arr = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97];
var total = 0;
var index;
//loop through the whole array
for (var i = 0; i < arr.length; i++) {
//find matching prime number
if (num < arr[i]) {
// get index of prime number in the array
index = arr.indexOf(arr[i]);
//sum up total of prime numbers up to 'num'
for (var b = 0; b < index; b++) {
total = total + arr[index];
}
}
}
return total;
}
sumPrimes(10);
, пожалуйста, добавьте несколько вариантов использования или, по крайней мере, добавьте желаемый результат. –
'index = arr.indexOf (arr [i]);' - это не просто запутанный способ сказать 'index = i' –
console.log() - ваш друг, который поможет вам отлаживать. – epascarello