一、问题及代码
中国古代数学家张丘建在他的《算经》中提出了著名的“百钱买百鸡问题”:鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁、母、雏各几何?
/* * 文件名称: 百鸡问题* 作 者: 唐鑫 * 完成日期: 2017年3月6日 * 版 本 号:v1.0 * 对任务及求解方法的描述部分:略* 输入描述:略 * 问题描述:鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡 * 程序输出:翁、母、雏各几何? * 问题分析:求出翁、母的范围,在范围内利用计算机的速算得到答案 * 算法设计:for循环 */#include<iostream>using namespace std;void main(){ int a,b,c; for(a=0;a<=20;a++) { for(b=0;b<=33;b++) { for(c=0;c<=300;c++) { if(15*a+9*b+c==300&&a+b+c==100) cout<<"鸡翁:"<<a<<" "<<"鸡母:"<<b<<" "<<"鸡雏:"<<c<<endl; } } }}二、运行结果:三、心得体会:
1计算机的速算能力能帮我们大忙
2我们只需分析以下范围计算让计算机进行,能节约大量时间
3int型最好不要出现除号
四、知识点总结:
1对三 第3点说明
在这个程序中
if(15*a+9*b+c==300&&a+b+c==100)把它改为(5*a+3*b+c/3==100&&a+b+c==100)
结果为
原因是计算机会对c进行约分,与原题不符合
2进行整数运算时最好不出现分数
新闻热点
疑难解答
图片精选