案例:百钱百鸡

简介: 案例:百钱百鸡

案例:百钱百鸡


需求:我国古代数学家张邱建在《算经》一书提出数学问题:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。


百钱买百鸡,问鸡翁,鸡母,鸡雏各几只?


分析:


假设鸡翁x只,鸡母y只,鸡雏z只则有:


x+y+z=100


5*x+3*y+z/3=100


单看一种鸡


,则有以下关系式


0<=x<=20


0<=y<=33


0<=z<=100


使用穷举法罗列出x,y,z的值


思路:


1.第一层循环:用于表示鸡翁的范围,初始化表达式的变量定义为x=0,判断条件是x<=20


2.第二层循环:用于表示鸡母的范围,初始化表达式的变量定义为y=0,判断条件是y<=33


3.第三层循环:用于表示鸡雏的变量z=100-x-y


4.判断表达式z%3==0和表达式5*x+3*y+z/3=100是否同时成立,如果成立,输出对应x,y,z的值,就是对应得鸡翁,鸡母,鸡雏


代码示例:


public class Test05 {
    public static void main(String[] args) {
        //第一层循环:用于表示鸡翁的范围,初始化表达式的变量定义为x=0,判断条件是x<=20
        for (int x = 0; x < 20; x++) {
            //.第二层循环:用于表示鸡母的范围,初始化表达式的变量定义为y=0,判断条件是y<=33
            for (int y = 0; y < 33; y++) {
                //第三层循环:用于表示鸡雏的变量z=100-x-y
                int z = 100 - x - y;
               // 判断表达式z%3==0和表达式5*x+3*y+z/3=100是否同时成立,如果成立,输出对应x,y,z的值,就是对应得鸡翁,鸡母,鸡雏
                if(z%3==0 && 5*x+3*y+z/3==100){
                    System.out.println(x+","+y+","+z);
                }
            }
        }
    }
}
目录
相关文章
|
6月前
|
算法 C#
C#实战 | 求解《丘建算经》百鸡问题
【7月更文挑战第9天】《丘建算经》的百鸡问题是一个经典的不定方程问题,用C#解决时,通过三重嵌套循环穷举公鸡、母鸡和小鸡的组合。代码示例中,外层循环分别对应公鸡和母鸡,而小鸡数量由总钱数和已知鸡种计算得出,避免了额外的内层循环。使用`if`判断确保总数量正确。注意,除法运算可能导致整数截断错误,需使用3.0保证浮点数除法的准确性。这种方法虽然效率较低,但能确保找到所有可行解。
62 1
C#实战 | 求解《丘建算经》百鸡问题
7-10 百钱百鸡
百鸡问题:“今有鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一。凡百钱买鸡百只,问鸡翁母雏各几何。” 百鸡问题是北魏数学家张丘建在《张丘建算经》中提出的一个世界著名的不定方程问题,它给出了由三个未知量的两个方程组成的不定方程组的解。
7-10 百钱百鸡
|
8月前
|
C++
百钱百鸡(代码实现)
百钱百鸡(代码实现)
99 0
过河卒-蓝桥杯-动态规划
过河卒-蓝桥杯-动态规划
141 0
|
机器学习/深度学习 C++
蓝桥杯C++小朋友崇拜圈
蓝桥杯C++小朋友崇拜圈
119 0
|
存储
【蓝桥杯集训·每日一题】AcWing 4309. 消灭老鼠
文章目录 一、题目 1、原题链接 2、题目描述 二、解题报告 1、思路分析 2、时间复杂度 3、代码详解 三、知识风暴 最大公约数
97 0
|
机器学习/深度学习
【蓝桥杯集训·每日一题】 AcWing 3996. 涂色
文章目录 一、题目 1、原题链接 2、题目描述 二、解题报告 1、思路分析 2、时间复杂度 3、代码详解 三、知识风暴 区间DP Unique函数
126 0
|
存储 人工智能 算法
【蓝桥杯集训·每日一题】AcWing 3305. 作物杂交
文章目录 一、题目 1、原题链接 2、题目描述 二、解题报告 1、思路分析 2、时间复杂度 3、代码详解 三、知识风暴 Spfa算法
131 0
|
存储 人工智能 算法
蓝桥杯十大常见天阶功法——炎之呼吸.叁之型.动态规划--(上篇)
蓝桥杯十大常见天阶功法——炎之呼吸.叁之型.动态规划--(上篇)
232 0
蓝桥杯十大常见天阶功法——炎之呼吸.叁之型.动态规划--(上篇)
周赛313赛后做题分析及总结
本文为力扣周赛313赛后做题分析及总结。
103 0