C語言 「百雞問題」最優解

2021-09-10 09:56:28 字數 1216 閱讀 6973

「百雞問題」:雞翁一值錢五,雞母一值錢三,雞雛三值錢一。百錢買百雞,問雞翁、雞母、雞雛各幾何?

問題分析

cocks,hens,chicks;//公雞、母雞、小雞

設公雞為x,母雞為y,小雞為z,有以下關係

x+y+z=100,//根據百雞的數目,得到的數學表示式

5x+3y+z/3=100,//根據百錢的數目,得到的數學表示式
下面再看看x,y,z的取值範圍。

由於只有100文錢,

則5x<100 ===> 0 0好,現在我們已經分析清楚了,下面直接上**了。

}}根據上述的除錯結果,我們發現這樣乙個規律:

第一列公雞數是4的倍數;

第二列母雞數是以7為公差遞減的;

第三列雞崽數是3的倍數。

之前的**:

x+y+z=100,//根據百雞的數目,得到的數學表示式

5x+3y+z/3=100,//根據百錢的數目,得到的數學表示式
根據規律優化後

**********=>

x+y+z=100 ①

5x+3y+z/3=100 ②

令②x3-① 可得

7x+4y=100

設x=4n,

則y=(100-28n)/4,即y=25-7n

所以z=75+3n

觀察第一次除錯結果,x的取值範圍是[0,12],===>n的取值範圍是[0,3]

再上**,這是優化後的「最優解」哦:

}簡單不?簡單的很吶!

數學是理科的「小王子」,這不是我第一次用數學知識解決程式設計問題了。類似的迴圈巢狀,哦,不,能夠跟「數學問題」有關的,都可以用數學知識來解決,多動手嘗試,多動手去發現「美」!

python百雞百錢最優解 python練習題

1.小明過年得到1500元壓歲錢,在商場看中乙個書包,正好商場做活動打八五折,從鍵盤輸入書包的 輸出折扣後書包的 以及小明買了書包後剩下的錢。money 1500 bao float input 請輸入書包的 0.85 sheng money bao print 折扣後書包的 bao print 小...

3 C語言百錢買百雞(百錢百雞,百雞問題)

中國古代數學家張丘建在他的 算經 中提出了乙個著名的 百錢買百雞問題 雞翁一,值錢五,雞母一,值錢三,雞雛三,值錢一,百錢買百雞,問翁 母 雛各幾何?1 使用 for 語句對 3 種雞的數嫌在事先確定好的範圍內進行窮舉並判斷,對滿足條件的 3 種雞的數量按指定格式輸出,否則進行下次迴圈。2 程式 如...

python解百錢買百雞 C語言解決百錢買百雞問題

我國古代數學家張丘建在 算經 一書中曾提出過著名的 百錢買百雞 問題,該問題敘述如下 雞翁一,值錢五 雞母一,值錢三 雞雛三,值錢一 百錢買百雞,則翁 母 雛各幾何?翻譯過來,意思是公雞乙個五塊錢,母雞乙個三塊錢,小雞三個一塊錢,現在要用一百塊錢買一百隻雞,問公雞 母雞 小雞各多少只?題目分析 如果...