求文档: 求在java里如何用for来实现从控制台输出1个数来查找1.1.2.3.5.8.13........的数

2024-11-26 12:38:04
推荐回答(2个)
回答1:

你是说通过控制台输出这个数列的第几个数应该是什么的程序么?
实现算法方法是这样的:public static int Foo(int i)
{
if (i <= 0)
return 0;
else if (i > 0 && i <= 2)
return 1;
else return Foo(i - 1) + Foo(i - 2);
}
这个是实现递归的主要算法,待会我把事情忙完帮你写一个完整的,稍等片刻
---------------------------------------------------------------
import java.util.Scanner;

public class test
{
public static void main(String[] args)
{

int d;
System.out.println("请输入整数:");
//接受输入数据
Scanner sc=new Scanner(System.in);
d=sc.nextInt();
//循环输出从一开始到输入数据的每个值
for(int i=1;i<=d;i++)
{
int k=Foo(i);
System.out.println("第"+i+"个数是"+k);
}

}
public static int Foo(int i)
{
//如果输入数据小于等于0,返回0
if (i <= 0)
return 0;
//如果输入数据等于1或者2,输出前两个的值
else if (i > 0 && i <= 2)
return 1;
//若是大于2,则输出前2个数的和
else return Foo(i - 1) + Foo(i - 2);
}
}
----------------------------------------------------------------
这是实现的完整程序

回答2:

能不能详细点?没太看明白