我一直在尝试编写一个可以显示斐波那契数列的程序。但是,我输入的任何数字都会输出 0。我怀疑它与变量的范围有关,或者我的返回值有问题。有人可以看看我的代码并弄清楚它是否真的是那些问题?我对java有点陌生,所以即使是基本的对我来说也很困难。
public static void main(String args [])
{
Scanner in = new Scanner(System.in);
int number = 0;
do{
System.out.print("Which Fibonacci Number would you like? ");
fib = in.nextInt();
}while(number < 0 || number > 71);
System.out.print("Fibonacci #"+number+" is "+fibcalc(fib)+"\n");
}
public static double fibcalc(double number)
{
double prevNumber1 = 0;
double prevNumber2 = 1;
double fib = 0;
for(int i =0; i < number; i++){
fib = prevNumber1;
prevNumber1 = prevNumber2;
prevNumber2 = fib + prevNumber2;
}
return fib;
}
做了一些修改,只差一个错误。
error: cannot find symbol
System.out.print("Fibonacci #"+number+" is "+fibcalc(fib)+"\n");
symbol: variable fib
我有一个快速的问题。一个方法可以调用另一个变量的方法吗?变量在花括号内。我的代码中的一种。似乎我的大多数错误都与这个相似。