public class Factorial { public static void main(String[] args) { //定义方法,输入一个数7,求第7个斐波那契数的值 int num = 7; //创建对象 A a1 = new A(); //接受方法返回的值 int f = a1.fibonacci(num); if(f == -1){ System.out.println("请输入大于等于1的整数"); }else { System.out.println(num + "对应的斐波那契数是" + f); } } } class A { public int fibonacci(int a) { //判断输入的数是否>=1 if (a >= 1) { //输入的数为1或2时返回1,斐波那契数第一和第二个数都是1 if (a == 1 || a == 2) { return 1; } else { //从第三个数开始,值是前两个数的和 return fibonacci(a - 1) + fibonacci(a - 2); } } else { return -1; } } }
递归求斐波那契数
最新推荐文章于 2024-09-04 15:29:36 发布