我需要从键盘上扫描一个int,并打印出比插入的要小的斐波那契数字。现在它打印了所有的小一点和一个更大的。需要改变时间。
public class tp2 {
public static int Fibo(int pos){
int retornado=0;
if(pos==0 || pos==1){
retornado=pos;
}else{
retornado=Fibo(pos-2)+Fibo(pos-1);
}
return retornado;
}
public static void main(String[] args) {
int tope,i, numero;
numero=0;
i=0;
Scanner stdin = new Scanner (System.in);
System.out.println("Ingrese un entero tope :");
tope = stdin.nextInt();
while (numero<tope){
numero=Fibo(i);
System.out.println(numero);
i++;
}
}
}发布于 2015-08-24 06:55:43
也许不是最漂亮的解决方案,但将当前的情况更改为:
while ((numero=Fibo(i))<tope){
System.out.println(numero);
i++;
}有办法吗
发布于 2015-08-24 06:56:06
试着这样做:
numero=Fibo(i);
while (numero<tope){
System.out.println(numero);
i++;
numero=Fibo(i);
}https://stackoverflow.com/questions/32175927
复制相似问题