用C++算法程序设计应用2. 百钱买百鸡。 我国古代数学家张丘键在《算经》中出了一道题:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?请编程并输出答案。
时间: 2024-05-16 17:14:37 浏览: 18
这道题可以使用穷举法来解决。我们可以使用三重循环来枚举鸡翁、鸡母和鸡雏的数量,然后判断是否符合题目要求即可。
具体实现如下:
```c
#include <stdio.h>
int main()
{
int cock, hen, chick; // 鸡翁、鸡母、鸡雏的数量
int money; // 买鸡花费的钱数
int count = 0; // 符合要求的解的数量
// 三重循环枚举鸡翁、鸡母、鸡雏的数量
for (cock = 0; cock <= 20; cock++) {
for (hen = 0; hen <= 33; hen++) {
chick = 100 - cock - hen; // 计算鸡雏的数量
money = cock * 5 + hen * 3 + chick / 3; // 计算花费的钱数
if (money == 100 && chick % 3 == 0) { // 判断是否符合要求
printf("第%d种方案:鸡翁%d只,鸡母%d只,鸡雏%d只\n", ++count, cock, hen, chick);
}
}
}
return 0;
}
```
运行结果如下:
```
第1种方案:鸡翁0只,鸡母25只,鸡雏75只
第2种方案:鸡翁4只,鸡母18只,鸡雏78只
第3种方案:鸡翁8只,鸡母11只,鸡雏81只
第4种方案:鸡翁12只,鸡母4只,鸡雏84只
```