如何在两个整数之间打印斐波那契数列?

精神病

我做了斐波那契数列之类的方法;

public static int fibonacci(int n) {
        if (n == 0) {
            return 0;
        } else if (n == 1) {
            return 1;
        } else {
            return fibonacci(n - 1) + fibonacci(n - 2);
        }
    }

但是我需要在两个数字之间打印该系列,所以我写了一些代码,例如:

int q=0;

while(q<max){

if(fibonacci(q)<min){}

if(fibonacci(q)>max){break;}

if(fibonacci(q)<=max&&fibonacci(q)>=min)                            
System.out.print(fibonacci(q)+" ");                     
q++;

主方法中的此循环。我需要用一种方法来执行此操作,我的意思是两个函数都将使用同一方法。

罗希特·贾恩(Rohit Jain)

一个数字N是斐波那契数字,如果是(5*N^2+4)或是(5*N^2-4)一个完美的正方形。我猜您可以使用此属性在min之间打印所有斐波那契数max

例如,5是一个斐波那契数,而5 * 5 * 5-4 = 121是一个完美的平方。

for (int i = min; i <= max; i++) {
    if (isPerfectSquare(5*i*i + 4) || isPerfectSquare(5*i*i - 4)) {
        // i is fibonacci number
    } 
}

在上述解决方案中,一旦获得了前两个斐波那契数,就可以跳过循环,并使用斐波那契公式获取其余的数。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何以列格式打印斐波那契数列

来自分类Dev

如何在C#中打印斐波那契数列的后n个数字?

来自分类Dev

如何在C或Java的单个循环中打印斐波那契数列及其反面?

来自分类Dev

如何在不使用循环的情况下以相反顺序打印斐波那契数列

来自分类Dev

如何在Lua中创建斐波那契数列?

来自分类Dev

如何产生斐波那契数列?

来自分类Dev

如何生成斐波那契数列

来自分类Dev

如何生成斐波那契数列?

来自分类Dev

斐波那契递归,为什么 fib(2) 打印两个?

来自分类Dev

确定两个斐波那契数的邻接

来自分类Dev

斐波那契数列

来自分类Dev

在JS中创建斐波那契数列时无法获取数组中的前两个项

来自分类Dev

打印斐波那契数列直到第n位?

来自分类Dev

如何不使用循环以相反顺序打印斐波那契数列

来自分类Dev

如何打印斐波那契数列并在堆栈溢出发生之前停止 - JAVA

来自分类Dev

如何递归生成斐波那契数列的数组?

来自分类Dev

如何用斐波那契数列动态填充链表

来自分类Dev

如何检查向量是否为斐波那契数列

来自分类Dev

如何修改这个斐波那契数列问题?

来自分类Dev

如何使用递归获取斐波那契数列?

来自分类Dev

如何在数组中获取斐波那契数列?

来自分类Dev

如何在 Java 中使用链表显示斐波那契数列

来自分类Dev

无限斐波那契数列

来自分类Dev

C ++中的斐波那契数列

来自分类Dev

斐波那契数列的跟踪递归

来自分类Dev

斐波那契数列之和

来自分类Dev

以斐波那契数列输出素数

来自分类Dev

改进C ++斐波那契数列

来自分类Dev

实现替代斐波那契数列