我正在制作一个我遇到问题的程序。我一直在使用这个程序一天,但没有工作。输出只有字母,@符号和数字。以下是该计划的说明。
生成斐波纳契数列。 Fibonacci系列中的每个数字都是 序列中前两个数字的总和。序列中的前两个数字都是1. 第三个数字是2,第四个数字是3,第五个数字是5,第六个数字是8.程序应该 能够在fibo序列中返回指定的量。如果指定的数字超出范围,则为-1 应该退还。
我已完成代码和转轮代码。我的输出将与此类似。
1
1
2
3
5
8
89
987
10946
1346269
165580141
1836311903
1
1
1
-1
这是我的代码
public class Fibonacci
{
int[] fibArray;
public Fibonacci()
{
fibArray = new int[50];
this.setFibo();
}
public void setFibo()
{
fibArray[0]=1;
fibArray[1]=1;
for(int idx = 2; idx<fibArray.length; idx++){
fibArray[idx] = fibArray[idx-1] + fibArray[idx-2];
}
}
public int[] getFibo()
{
return fibArray;
}
public String toString()
{
return this.getFibo() + "\n";
}
}
这是我的转轮代码。
public class FibonacciRunner
{
public static void main(String[] args) {
int[] fibArray = {1,2,3,4,5,6,11,16,21,31,41,46,1,1,2,1,2,11};
Fibonacci fibo = new Fibonacci();
System.out.println(fibo.getFibo());
System.out.println(fibo.getFibo());
System.out.println(fibo.getFibo());
System.out.println(fibo.getFibo());
System.out.println(fibo.getFibo());
System.out.println(fibo.getFibo());
System.out.println(fibo.getFibo());
System.out.println(fibo.getFibo());
System.out.println(fibo.getFibo());
System.out.println(fibo.getFibo());
System.out.println(fibo.getFibo());
System.out.println(fibo.getFibo());
System.out.println(fibo.getFibo());
System.out.println(fibo.getFibo());
System.out.println(fibo.getFibo());
}
}