首页 > 其他分享 >案例:百钱百鸡

案例:百钱百鸡

时间:2022-11-07 17:36:03浏览次数:47  
标签:鸡翁 变量 百钱 鸡母 鸡雏 案例 百鸡 100 表达式


案例:百钱百鸡

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

百钱买百鸡,问鸡翁

,鸡母

,鸡雏

各几只?

 

 

 

分析:

假设鸡翁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);
}
}
}
}
}

案例:百钱百鸡_穷举法

 

标签:鸡翁,变量,百钱,鸡母,鸡雏,案例,百鸡,100,表达式
From: https://blog.51cto.com/u_15612474/5830131

相关文章