用JAVA循环写出一共有30个人,可能包括男人,女人和小孩。他们在一家饭馆吃饭共花了50先令,其中每个男人花3先令,每个女人花2先令,每个小孩花1先令。请问男人、女人和小孩各几人?请编写一个程序来计算。
时间: 2024-02-03 07:12:33 浏览: 54
以下是使用Java循环实现的程序:
```java
public class CountPeople {
public static void main(String[] args) {
int totalPeople = 30;
int totalMoney = 50;
int manMoney = 3;
int womanMoney = 2;
int childMoney = 1;
int manCount = 0;
int womanCount = 0;
int childCount = 0;
for (int i = 0; i <= totalPeople; i++) {
for (int j = 0; j <= totalPeople - i; j++) {
int k = totalPeople - i - j;
if (i * manMoney + j * womanMoney + k * childMoney == totalMoney) {
manCount = i;
womanCount = j;
childCount = k;
break;
}
}
}
System.out.println("男人:" + manCount + " 人");
System.out.println("女人:" + womanCount + " 人");
System.out.println("小孩:" + childCount + " 人");
}
}
```
程序中,我们使用了两层循环,分别枚举男人、女人和小孩的数量。在循环中,我们计算当前数量下的总花费,如果总花费等于50,则表示当前数量是一个解,我们记录下当前的男人、女人和小孩数量,并跳出循环。
最终,程序输出男人、女人和小孩各有几人。
阅读全文