Суммируйте все нечетные числа Фибоначчи

Учитывая положительное целое число num, вернуть сумму всех нечетных чисел Фибоначчи, которые меньше или равны num.

Первые два числа в последовательности Фибоначчи — это 1 и 1. Каждое дополнительное число в последовательности является суммой двух предыдущих чисел. Первые шесть чисел последовательности Фибоначчи — это 1, 1, 2, 3, 5 и 8.

Например, sumFibs(10) должно возвращать 10, поскольку все нечетные числа Фибоначчи, меньшие или равные 10, равны 1, 1, 3 и 5.

один из способов решить это

функция sumFibs(число){

пусть а = 1;

пусть б = 1;

пусть нечетная сумма = 1

в то время как (b ≤ число) {

if (b % 2 == 1){

сумма +=b;

}

пусть темп = б;

b = a+b;

а = температура;

}

вернуть нечетную сумму;

}

теперь решение без использования цикла while.

функция sumFibs(число){

постоянный результат = [0,1];

пусть нечетная сумма = 1;

для (пусть i = 2; ; i++) {

пусть newFibNum = результат[i-2]+ результат[i-1];

если (newFibNum › число) {

перерыв

}

результат.push(newFibNum);

if(newFibNum % 2 !== 0) {oddSum += newFibNum

}

}

вернуть нечетную сумму;

}

Этот второй метод был вдохновлен Генри (мой партнер по кодированию).

Спасибо за прочтение.