[英]Fibonacci method return nth number in sequence
我需要制作一個返回斐波那契數列中的第n個整數的方法,我編寫的代碼在打印到表中時會返回該數列的第二個整數。 方法中使用的int fib是行號乘以列號,你們能幫忙嗎?
private int fibonacci(int fib){
int a = 1, b = 1;
while(a < fib){
b+=a+=b;
}
return b+=a+=b;
}
private int fibonacci(int fib){
int fibn = 0;
fibn =(int)((Math.pow((1+Math.sqrt(5)), fib)-Math.pow((1-Math.sqrt(5)), fib))/(Math.pow(2, fib)*Math.sqrt(5)));
return fibn;
}
* | 1 2 3 4 5
--------------------------------
1 | 1 1 2 3 5
2 | 1 3 8 21 55
3 | 2 8 34 144 610
4 | 3 21 144 9876765
試試下面的代碼,例如:
public class Fibonacci {
public static void main(String[] args) {
int n = 15, a = 1, b = 1;
System.out.print(a + " " + b);
for(int i =3; i < n; i++) {
b = a + b;
a = b - a;
System.out.print(" " + b);
}
}
}
這給出了輸出:
1 1 2 3 5 8 13 21 34 55 89 144 233 377
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.