黑马程序员技术交流社区

标题: 生兔子的问题 [打印本页]

作者: x379769646    时间: 2016-10-6 18:23
标题: 生兔子的问题
題目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一
对兔子,假如兔子都不死,问每个月的兔子总数为多少?
作者: glq123    时间: 2016-10-6 18:31
[Java] 纯文本查看 复制代码
import java.util.Scanner;
class BuSiTu {
        /*
        【程序1】
        题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,
        小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,
        问每个月的兔子对数为多少?
        */
        /*
        1,1,2,3,5,8,13,...((n - 1) + (n - 2))
        */
        public static void main(String[] args) {
                Scanner sc = new Scanner(System.in);
                print();
                while (true) {
                        System.out.print("继续输入请按0,退出输入请按1:");
                        int s = sc.nextInt();
                        System.out.println();
                        if (s == 0) {
                                print();
                               
                        }else if(s == 1) {
                                break;
                        }
                }
               

        }

        public static void print() {
                Scanner sc = new Scanner(System.in);
                System.out.print("请输入月份:");
                int c = sc.nextInt();
                System.out.println();

                int b = tuzi(c);
                if (b == 1) {
                        System.out.println("第" + c + "个月的兔子对数为:" + b + "对。" + "\r\n");
                }else {
                        System.out.println("第" + c + "个月的兔子对数为:" + b + "对。" + "\r\n");
                }
        }

        public static int tuzi(int a) {
                if (a == 1 || a == 2) {
                        return 1;
                }
                return tuzi(a - 1) + tuzi(a - 2);
        }
}


自己做的,你可以参考一下,有什么更好的建议可以讨论讨论!
作者: 叫我宁采臣    时间: 2016-10-6 19:01
冯家老师视频不是有讲嘛递归那里




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2