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

While 循环按预期执行了一次

While 循环按预期执行了一次

子衿沉夜 2021-06-10 18:01:58
public class fibonacci{    public static void main(String[] args)    {        int a=0,b=1,c=2;        while(a<4000000)        {            a=b;            b=c;            c=a+b;            System.out.println(a);        }    }   }试图打印小于 400000 的斐波那契数列,但它也在打印 5702887。
查看完整描述

2 回答

?
冉冉说

TA贡献1877条经验 获得超1个赞

重新排列打印和检查,使两者作用于相同的值


int a=1,b=1,c=2;

while(a<4000000)

{

    System.out.println(a);

    a=b;

    b=c;

    c=a+b;        

}

这将输出斐波那契序列,开始时有两个“1”。

如果你想要“1, 2, 3 ...”使用


int a=1,b=2,c=3;


查看完整回答
反对 回复 2021-06-17
?
牛魔王的故事

TA贡献1830条经验 获得超3个赞

斐波那契数列从 1. 看这个。我为您的代码提供了解决方案。a=b检查后设置a<4000000。那么你需要检查b。


int a=0,b=1,c=2;

    while(b<4000000)

    {

        a=b;

        b=c;

        c=a+b;

        System.out.println(a);

    }


查看完整回答
反对 回复 2021-06-17
  • 2 回答
  • 0 关注
  • 107 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信