百钱买百鸡”是我国古代的著名数学题。题目这样描述:3 文钱可以买1只公鸡,2 文钱可以买1只母鸡,1 文钱可以买3只小鸡。用100 文钱买100 只鸡,那么各有公鸡、母鸡、小鸡多少只?
1.我们先设公鸡为x只,由于公鸡3文钱一个,价格不能超出100文,所以x的取值范围为
0 < x < 33
用for循环来做 for (int x = 0; x <= 33; x++)
2.母鸡为y只,母鸡的价格为2文钱一个,价格不超过100文,所以y的取值范围为
0 < y <= 50
用for循环来做 for (int y = 0; y <= 50; y++)
3.小鸡为z只,小鸡的个数为100-公鸡的数量-母鸡的数量
z = 100 - x - y
综合起来代码为
public class Demo07{
public static void main (String []args){
//设买公鸡X个,一个公鸡三文,最多买33个
for (int x = 0; x <= 33; x++){
//设买母鸡Y个,一个母鸡两文,最多买50个
for (int y = 0; y <= 50; y++){
//设买小鸡Z个,一百只鸡减去公鸡和母鸡就是小鸡
int z = 100 - x - y;
//判断当公鸡,母鸡,小鸡的价格相加刚好等于100时并且小鸡价格刚好为整数时
if((x * 3 + y * 2 + z / 3 == 100 ) && z % 3 == 0){
System.out.print("可买公鸡只数:" + x);
System.out.print("可买母鸡只数:" + y);
System.out.println("可买小鸡只数:" + z);
}
}
}
}
}