蛮力法——百元买百鸡

文章讲述了中国古代数学家张丘建在《算经》中的百鸡问题,通过编程实现计算用100元购买100只鸡(公鸡5元/只,母鸡3元/只,小鸡1元/3只)的不同组合解。给出了一段C语言代码来寻找所有可能的整数解。
摘要由CSDN通过智能技术生成

题目描述

我国古代的数学家张丘建在《算经》中提出的百鸡问题:“鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一。百钱买百鸡,问鸡翁、母、雏各几何?”其意为:“每只公鸡值五元,每只母鸡值三元,小鸡三只值一元。用一百元买一百只鸡,问公鸡、母鸡、小鸡各可以买多少只?”

输出样例:

公鸡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;

  • 10
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值