为什么这只有 return 值 1&0?
Why does this only return values 1&0?
我试过几次编辑这个,在我看来没有发现任何错误...
最初的问题是输入一个索引号并在该索引处找到斐波那契数......
现在的程序对我来说看起来不错,但是 returns,对于前两个值,1 然后又是 1,同样是 0。
我能做什么?
代码:
import java.util.Scanner;
public class main2 {
public int FibIterative(int i){
System.out.print.ln("Enter the index of the series.");
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
if (n<0){
throw new IllegalArgumentException("No number in the series is negative");
} else if (n==0||n==1) {
return n;
}
int prev=0;
int prevPrev=1;
int current=0
for (int x=0; x<n; x++){
current= prev+ prevPrev;
prevPrev= prev;
prev= current;
}
return current;
}
}
试试这个代码:)
int p=0;
int c=1;
int sum=0;
String fibo="";
for(int i=0;i<10;i++)
{
sum =c+p;
//System.out.println(sum);
p=c;
c=sum;
fibo=fibo+sum;
}
return fibo;
我试过几次编辑这个,在我看来没有发现任何错误... 最初的问题是输入一个索引号并在该索引处找到斐波那契数...... 现在的程序对我来说看起来不错,但是 returns,对于前两个值,1 然后又是 1,同样是 0。 我能做什么?
代码:
import java.util.Scanner;
public class main2 {
public int FibIterative(int i){
System.out.print.ln("Enter the index of the series.");
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
if (n<0){
throw new IllegalArgumentException("No number in the series is negative");
} else if (n==0||n==1) {
return n;
}
int prev=0;
int prevPrev=1;
int current=0
for (int x=0; x<n; x++){
current= prev+ prevPrev;
prevPrev= prev;
prev= current;
}
return current;
}
}
试试这个代码:)
int p=0;
int c=1;
int sum=0;
String fibo="";
for(int i=0;i<10;i++)
{
sum =c+p;
//System.out.println(sum);
p=c;
c=sum;
fibo=fibo+sum;
}
return fibo;