例9-8百钱买百鸡问题.doc

上传人:scccc 文档编号:13069475 上传时间:2021-12-13 格式:DOC 页数:3 大小:67KB
返回 下载 相关 举报
例9-8百钱买百鸡问题.doc_第1页
第1页 / 共3页
例9-8百钱买百鸡问题.doc_第2页
第2页 / 共3页
例9-8百钱买百鸡问题.doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《例9-8百钱买百鸡问题.doc》由会员分享,可在线阅读,更多相关《例9-8百钱买百鸡问题.doc(3页珍藏版)》请在三一文库上搜索。

1、例9-8百钱买百鸡问题百个铜钱买了一百只鸡,其中公鸡一只5钱、母鸡一只3钱,小鸡一钱3只,问一百只鸡中公鸡、母鸡、小鸡各多少)。这是一个古典数学问题,设一百只鸡中公鸡、母鸡、小鸡分别为x, y, z,问题化为三 元一次方程组:5x+3y+z/3 = 100(百钱)x+y + Z = 100(百鸡)这里x, y,z为正整数,且z是3的倍数;由于鸡和钱的总数都是100,可以确定x, y, z 的取值范围:1)x的取值范围为1202)y的取值范围为1333)z的取值范围为399,步长为3对于这个问题我们可以用穷举的方法,遍历x, y, z的所有可能组合,最后得到问题的解。数据要求问题中的常量:无问题

2、的输入:无问题的输出:int x, y, z /*公鸡、母鸡、小鸡的只数*/初始算法1. 初始化为1;2. 计算x循环,找到公鸡的只数;3. 计算y循环,找到母鸡的只数;4. 计算z循环,找到小鸡的只数;5. 结束,程序输出结果后退出。算法细化算法的步骤1实际上是分散在程序之中的,由于用的是for循环,很方便的初始条件放 到了表达式之中了。步骤2和3是按照步长1去寻找公鸡和母鸡的个数。步骤4的细化4. 1 z = l4. 2是否满足百钱,百鸡4. 2. 1满足,输出最终百钱买到的百鸡的结果4. 2. 2不满足,不做处理4. 3变量增加,这里注意步长为3流程图开始图5-8程序执行流程图程序代码如

3、下存include "stdio.h”mauiQint xyz;fbr(x=l ;x<=20;x+)for(y= 1 ;y<=3 3 ;y+)fbi(z=3;z<=99;z+=3)if(5 *x+3 *y+z/3=100)&&(x+y+z=100)/* 是否满足百钱和百鸡的条件 */ prmtf(ncock=%djien=%d,cliicken=%dii,x,y,z);分析程序运行结果如下:cock=4jien=8.cliicken=78cock=8,hen=ll ,cliicken=81cock= 12Jien=4,chicken=84对于这个问题实际上可以不用三重循坏,而是用二重循环,因为公鸡和母鸡数确定后, 小鸡数就定了,即z = 100-x-y。请同学们自己分析二重循环和三重循坏的运行次数,做为 练习自己调试这一方法。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1