题目描述
我国古代的数学家张丘建在《算经》中提出的百鸡问题:“鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一。百钱买百鸡,问鸡翁、母、雏各几何?”其意为:“每只公鸡值五元,每只母鸡值三元,小鸡三只值一元。用一百元买一百只鸡,问公鸡、母鸡、小鸡各可以买多少只?”
输出样例:
公鸡0只,母鸡25只,小鸡75只
公鸡4只,母鸡18只,小鸡78只
公鸡8只,母鸡11只,小鸡81只
公鸡12只,母鸡4只,小鸡84只
代码:
#include<stdio.h>
#include<stdbool.h>
int main(){
int x, y, z; // x代表公鸡数量,y代表母鸡数量,z代表小鸡数量
for(x = 0; x <= 20; x++){ // 公鸡最多20只,因为超过20只总价就超过100元了
for(y = 0; y <= 33; y++){ // 母鸡最多33只,因为超过33只总价也超过100元了
z = 100 - x - y; // 小鸡的数量是总数减去公鸡和母鸡的数量
if(z % 3 == 0 && 5 * x + 3 * y + z / 3 ==100){
// z必须是3的倍数(因为三只小鸡一元),且总价必须为100元
printf("公鸡:%d只, 母鸡:%d只, 小鸡:%d只\n", x, y, z);
}
}
}
return 0;
}