一、問題及代碼
中國古代數學家張丘建在他的《算經》中提出了著名的“百錢買百雞問題”:雞翁一,值錢五,雞母一,值錢三,雞雛三,值錢一,百錢買百雞,問翁、母、雛各幾何?
/* * 文件名稱: 百雞問題* 作 者: 唐鑫 * 完成日期: 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進行整數運算時最好不出現分數
新聞熱點
疑難解答
圖片精選