Java 范围、方法和返回
我一直在试图写一个程序,可以显示斐波那契序列。但是,我输入的任何数字都将输出0。我怀疑这可能与变量的范围有关,也可能与我的返回错误有关。有人能看看我的代码,看看是否真的是这些问题吗?我对java有点陌生,所以即使是基础知识对我来说也很难Java 范围、方法和返回,java,scope,Java,Scope,我一直在试图写一个程序,可以显示斐波那契序列。但是,我输入的任何数字都将输出0。我怀疑这可能与变量的范围有关,也可能与我的返回错误有关。有人能看看我的代码,看看是否真的是这些问题吗?我对java有点陌生,所以即使是基础知识对我来说也很难 public static void main(String args []) { Scanner in = new Scanner(System.in); int number = 0; do{ System.
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;
}
我有个问题。
一个方法可以为变量调用另一个方法吗?变量位于花括号内。我的代码中也有类似的错误。似乎我的大多数错误都与此类似。这与范围无关。请看以下代码:
while(i < fib){
fib = prevNumber1;
...
}
这与范围无关。请看以下代码:
while(i < fib){
fib = prevNumber1;
...
}
感谢指针,我更改了循环结构,将原始fib更改为数字。感谢指针,我更改了循环结构,将原始fib更改为数字。
for (int i = 0; i < count; i++) {
// whatever
}