我试图在java中返回fibonacci序列,但我的值有问题。
示例代码。
@Override
public int fibonacci(int numero) throws RemoteException {
int numero1 = 1;
int numero2 = 0;
int fibonacci = 0;
for (int i = 0; i <= numero; i++) {
fibonacci = numero1 + numero2;
numero1 = numero2;
numero2 = fibonacci;
//return "La serie fibonnaci es:" + fibonacci;
}
return fibonacci;
}
Fibonacci变量返回0但我需要返回一个fibonnaci序列。 ¿有什么想法吗?
答案 0 :(得分:2)
针对您的问题的两个问题:
排名第一:在屏幕上打印
public static void fibonacci(int numero) {
int numero1 = 0;
int numero2 = 1;
int fibonacci = 0;
for (int i = 0; i <= numero; i++) {
fibonacci = numero1 + numero2;
numero1 = numero2;
numero2 = fibonacci;
System.out.println(fibonacci);
}
}
排名第二 (我认为更好):返回列表
public static List<Integer> fibonacci(int numero) {
LinkedList<Integer> fibonacciSequence = new LinkedList<>();
int numero1 = 0;
int numero2 = 1;
int fibonacci = 0;
for (int i = 0; i <= numero; i++) {
fibonacci = numero1 + numero2;
numero1 = numero2;
numero2 = fibonacci;
fibonacciSequence.add(fibonacci);
}
return fibonacciSequence;
}
答案 1 :(得分:0)
您在初始化期间切换了numero1
和numero2
。
这应该解决它:
int numero1 = 0;
int numero2 = 1;