百錢百雞問題

2021-07-10 15:00:04 字數 878 閱讀 3986

/*

*2015 煙台大學計算機與控制工程學院

*檔名稱:百錢百雞問題

*完成日期 :2023年3月12日

*版本號;

*百錢百雞問題

中國古代數學家張丘建在他的《算經》中提出了著名的「百錢買百雞問題」:雞翁一,值錢五,

雞母一,值錢三,雞雛三,值錢一,百錢買百雞,問翁、母、雛各幾何?

買 20只,顯然  x的值在 0~20之間;同理,y的取值範圍在   0~33之間,可得到下面的不定方程:

5x+3y+z/3=100

x+y+z=100

所以此問題可歸結為求這個不定方程的整數解。

由程式設計實現不定方程的求解與手工計算不同。在分析確定方程中未知數變化範圍的前提下,

可通過對未知數可變範圍的窮舉,驗證方程在什麼情況下成立,從而得到相應的解。

引申:這類求解不定方程的實現,各層迴圈的控制變數直接與方程未知數有關,且採用對未知

數的取值範圍上窮舉和組合的方法來覆蓋可能得到的全部各組解。如果要採取技巧,往往是根據題

意,更合理地設定迴圈控制條件來減少這種窮舉和組合的次數,提高程式的執行效率,需要具體問

題具體分析。*/

#include

using namespace std;

int  main()

{/* code */

int gong,mu,you;

for (gong=0; gong< 20; gong++)

{/* code */

for(mu=0;mu<33;mu++)

{you=100-gong-mu;

if((gong*5)+(mu*3)+(you/3)==100&&you%3==0)

cout << "公雞有"<

百錢百雞問題

問題陳述 這是我國古代一道有名的數學難題,要求用100元買100隻雞,其中公雞五元乙隻,母雞三元乙隻,每種至少買乙隻,求購買方案,程式中以x代表公雞,y代表母雞,z代表小雞 static void main string args 母雞 小雞 x,y,z console.read 最後得到的答案如下...

百錢百雞問題

加減乘除執行效率依次降低,執行時間依次增加 直接移位的執行效率相對較高 半質數問題 1 簡單解法 百錢百雞問題 include include using namespace std int main void return 0 2 高階解法 西元前五世紀,我國古代數學家張丘建在 算經 一書中提出了...

百錢百雞問題

中國古代數學家張丘建在他的 算經 中提出了著名的 百錢買百雞問題 雞翁一,值錢五,雞母一,值錢三,雞雛三,值錢一,百錢買百雞,問翁 母 雛各幾何?此題為當初學校程式設計比賽的題目,之前用的三重迴圈再加乙個if語句 類似與下面這種 include int main return 0 後來ac的是用do...