math - Fibonacci Numbers - Add odd numbers only - Javascript -


so trying develop formula sum odd fibonacci numbers , including given number.

for example:

  • given number 4. result should 5 (odd fibonacci numbers being 1, 1, 3).

currently code:

function sumfibs(num) {   var sum = 0;   for(i=0,j=1,k=0; k<=num;i=j,j=x,k++) {     x = + j;     if (x%2 !== 0) {       sum +=x;       if (sum >= sum) {         break;       }     }   }   return sum; } sumfibs(4); 

clearly code doesn't work. if remove (if sum >= sum) break statement creates infinite loop. have taken loop post here formula given create fibonacci sequence, having difficulty after number generated, how add it. way of trying checking if modulus not 0 (which indicates odd number).

thanks help.

your code bit confusing variables names , declaration (always try declare using var). here's function gets need

function sumfibs(num) {   var fib0 = 0;   var fib1 = 1;   var fib = 1;   var sum = fib0;   while ( fib <= num){     if (fib % 2) {         sum += fib1;     }     fib = fib0 + fib1;     fib1 += fib0;     fib0 = fib1 - fib0;   }    return sum; } 

Comments