为了账号安全,请及时绑定邮箱和手机立即绑定

JS中关于斐波那契的实例

标签:
JavaScript

给一个正整数num,返回小于或等于num的斐波纳契奇数之和。

斐波纳契数列中的前几个数字是 1、1、2、3、5 和 8,随后的每一个数字都是前两个数字之和。

例如,sumFibs(4)应该返回 5,因为斐波纳契数列中所有小于4的奇数是 1、1、3。

代码:

function fibs(n){
  var a=1,b=1;
  var tmp=0;
  var arr=[1,1];
  for(var i=3;i<=n;i++){
    tmp=b;
    b=a+b;
    arr.push(b);
    a=tmp;
  }//构造斐波那契数组

  var sum=0;
  for(var j=0;j<arr.length;j++){
    if(arr[j] % 2 !== 0){
      sum += arr[j];
    }
  }
  return [arr[arr.length - 1],sum];
}
function sumFibs(num) {
  var k=3;
  while(fibs(k)[0] <= num){
    k++;
  }

  return fibs(k-1)[1];
}
点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消