While 循环按预期执行了一次

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。


子衿沉夜
浏览 108回答 2
2回答

冉冉说

重新排列打印和检查,使两者作用于相同的值int a=1,b=1,c=2;while(a<4000000){&nbsp; &nbsp; System.out.println(a);&nbsp; &nbsp; a=b;&nbsp; &nbsp; b=c;&nbsp; &nbsp; c=a+b;&nbsp; &nbsp; &nbsp; &nbsp;&nbsp;}这将输出斐波那契序列,开始时有两个“1”。如果你想要“1, 2, 3 ...”使用int a=1,b=2,c=3;

牛魔王的故事

斐波那契数列从 1. 看这个。我为您的代码提供了解决方案。a=b检查后设置a<4000000。那么你需要检查b。int a=0,b=1,c=2;&nbsp; &nbsp; while(b<4000000)&nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; a=b;&nbsp; &nbsp; &nbsp; &nbsp; b=c;&nbsp; &nbsp; &nbsp; &nbsp; c=a+b;&nbsp; &nbsp; &nbsp; &nbsp; System.out.println(a);&nbsp; &nbsp; }
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java