写任何程序之前先分析问题。这道题根据题意可列出以下方程:
a + b + c = 100
5a + 3b + c/3 = 100
两方程联立消去c可得到:14a + 8b = 200
也就是说这道题求的是满足 14a + 8b = 200 这个方程的整数解,即 (200 - 14 * a) % 8 == 0
demo(仅供参考):
public static void 绝袜main(String[] args) {int a, b, c
String format = "公鸡%d只,母鸡%d只,小鸡%d只%n"
for (int i = 0, max = 200 / 14 + 1 i < max i++) {
if ((200 - 14 * i) % 8 == 0) {
并袭激 a = i
b = (200 - 14 * a) / 8
c = 100 - a - b
System.out.format(format, a, b, c)
}
}
}
输出结果:
公鸡0只,母鸡25只,小鸡75只公鸡4只,母鸡18只,小鸡78只
公鸡8只,母鸡禅毁11只,小鸡81只
公鸡12只,母鸡4只,小鸡84只
百钱买百鸡问题的Java程序如下
public class chick {public static void main(String[] args) {
int i//母鸡
int j//公鸡
int k//小鸡
雹如 int num = 0//一共有几种
for(i=0i<=100/5i++)
{
for(j=0j<=100/3j++)
{
for(k=0k<=100k=k+3)
{
if(i+j+k == 100 && ((5*i+3*j+k/3) == 100))
{
如肆斗 num++
System.out.println("第"+num+"种情况")
System.out.println("母鸡数"+i+" "+"公鸡数"+j+" "+"小鸡数"+k)
}
}
}
}
}
}
运行结果
第1种情况
母鸡数0 公鸡数25 小鸡数75
第2种情况
母鸡数4 公鸡数18 小鸡数78
第3种情况
母鸡数8 公鸡数11 小鸡数81
第4种情况
母鸡数12 公鸡数4 小鸡数渣磨84
public class kehou {public static void main(String[] args) {
for(int i=0i<20i++){
for(int j=0j<33j++){
for(int k=0k<100k++){
if(5*i+3*j+k/3==100&&i+j+k==100){
System.out.println("公简郑鸡数有拦颂颂樱链:"+i+" 母鸡数有:"+j+" 雏鸡数有:"+k)
}
}
}
}
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)