A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

liu果酱

初级黑马

  • 黑马币:20

  • 帖子:13

  • 精华:0

© liu果酱 初级黑马   /  2019-3-29 19:05  /  689 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 liu果酱 于 2019-3-29 19:08 编辑

1.不死神兔案例:
有一个很有名的数学逻辑题叫做不死神兔问题。有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问第n个月的兔子对数为多少?
[Java] 纯文本查看 复制代码
public class GetCount {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入您要计算的月数");
        int n = sc.nextInt();
        int num = getCount(n);
        System.out.println(num);
    }

    //要求定义一个方法,来求第n个月兔子的对数
    //参数int n
    //返回值 int
    public static int getCount(int n) {
        if (n == 1 || n == 2) {
            return 1;
        }
        int[] arr = new int[n];
        arr[0] = 1;
        arr[1] = 1;

        for (int x = 2; x < arr.length; x++) {
            arr[x] = arr[x - 2] + arr[x - 1];
        }
        return arr[arr.length - 1];

    }
}
2.我国古代数学家张丘建在《算经》一书中提出的数学问题:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。​    百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?
案例提示
          用两个循环:
          ①第1层循环,用于表示鸡翁的范围,初始化表达式的变量定义为 a=0,判断条件是a<=20。​          ②第2层循环,用于表示鸡母的范围,初始化表达式的变量定义为 b=0,判断条件是b<=33。​          ③这个时候,用于表示鸡雏的变量 c = 100 – a – b。​          ④判断表达式 c%3==0 和表达式 5a + 3b + c/3 = 100 是否同时成立,如果成立,输出对应的 a,b,c 的值,就是对应的鸡翁,鸡母,鸡雏的值。
[Java] 纯文本查看 复制代码
public class Test {
    public static void main(String[] args) {
        //公鸡a  母鸡b  小鸡c
        int a = 0;
        int b = 0;
        int c = 0;
        //a+b+c=100
        //5*a+*b+c/3=100

        for (a = 0; a <= 20; a++) {
            for (b = 0; b <= 33; b++) {
                c = 100 - a - b;
                if (a * 5 + b * 3 + c / 3 == 100) {
                    System.out.println("公鸡" + a + "母鸡" + b + "小鸡" + c);
                }
            }
        }
    }
}



0 个回复

您需要登录后才可以回帖 登录 | 加入黑马