百錢買百雞,進一步提問,c語言的百錢買百雞問題。

2022-09-05 08:15:18 字數 5611 閱讀 3417

1樓:匿名使用者

你的演算法更麻煩,而且答案少了一個,公雞0,母雞25,小雞75,因為題目沒有說三種雞都必須有。簡單點可以用三元二次方程,配合條件方程式,加上陣列帶入方法算出,公雞數量有20種可能,就只需要帶入計算20次就可以了。

演算法如下:設公雞=x 母雞=y 小雞=z由題可知,公雞數量是0到20的正整數,所以是陣列小雞數量z=100-x-y

根據金額的條件

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

兩邊同時乘以3

15x+9y+z=300

帶入小雞數量z=100-x-y

15x+9y+(100-x-y)=300

整理公式

15x+9y+100-x-y=300

14x+8y+100=300

8y=300-14x-100

y=(200-14x)/8

依次帶入陣列x=

y的數值如果是正整數,則條件滿足,結果成立結果可以算出4個答案,如果你實際算算的話,可以發現用不了帶入到20,帶入不到一半的資料的時候,就可以發現,數值就變成負的了,所以之後的數值就不用帶入了,這個公式即便總價錢和雞的總數進行更改,也可同樣運用。

至於為什麼用公雞數量這個陣列,因為分析條件,公雞的數量,是未知數當中,陣列數字個數最少的一組,當然用最少的,可以減少運算次數。

解答完畢,謝謝,祝君愉快。

2樓:

天啊.................

c語言的百錢買百雞問題。

3樓:刀無極啊

我國古代數學家張丘建在《算經》一書中曾提出過著名的「百錢買百雞」問題,該問題敘述如下:雞翁一,值錢五;雞母一,值錢三;雞雛三,值錢一;百錢買百雞,則翁、母、雛各幾何?

翻譯過來,意思是公雞一個五塊錢,母雞一個三塊錢,小雞三個一塊錢,現在要用一百塊錢買一百隻雞,問公雞、母雞、小雞各多少隻?

題目分析

如果用數學的方法解決百錢買百雞問題,可將該問題抽象成方程式組。設公雞x只,母雞y只,小雞z只,得到以下方程式組:

a:5x+3y+1/3z = 100

b:x+y+z = 100

c:0 <= x <= 100

d:0 <= y <= 100

e:0 <= z <= 100

如果用解方程的方式解這道題需要進行多次猜解,計算機的一個優勢就是計算速度特別暴力並且無怨無悔,所以我們可以欺負她、蹂躪她!因此我們用窮舉法的方式來解題,需要101^3次猜解,但對於計算機來說,小case!

**清單:

#include int main()

}return 0;

}執行結果:百元買百雞的問題所有可能的解如下:

公雞 0 只,母雞 25 只,小雞 75 只

公雞 4 只,母雞 18 只,小雞 78 只

公雞 8 只,母雞 11 只,小雞 81 只

公雞 12 只,母雞 4 只,小雞 84 只

4樓:葉片舟

//不知道你的陣列幹什麼用的

#include "stdio.h"

struct node

;int main()}}

return 0;}

5樓:

#include

int main()}}

}return 0;

}求採納。

一百錢買百雞問題 j**a

6樓:匿名使用者

public class kehou }}}}}

7樓:

void zw1() }}

}}這樣是可以的

不知道你的z/3==0的條件是幹什麼用的。

百錢買百雞怎麼用j**a寫程式??

8樓:匿名使用者

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

* z=100-x-y

* z能被3整除

* @param args

*/public static void main(string args)

if (5*x+3*y+z/3==100) }}}

9樓:匿名使用者

//百雞百錢

public static void main(string args) }}

}}//雞兔同籠

public static void main(string args) }}}

j**ascript程式設計:百錢買百雞問題

10樓:

for(var i = 0; i < 21; i++)}}}}

如何用j**ascript計算百錢買百雞問題 30

11樓:

for (var x = 1; x < 20; x++)}}

c語言 百錢買百雞

12樓:匿名使用者

1.a,b的初始值不能定義為0,應該定義為1。

2.a,b,b的具體意思應該明確:a:公雞的個數;b:母雞的個數;c:小雞的個數。

3.一定要注意小雞是一元三隻,所以小雞的個數c只能是3的整數倍,即c+=3。

4.#include

void main()

}}}希望可以幫到你哦!

13樓:茹純公羊元冬

*********************演算法以及書寫上,似乎都有點小問題

*********************如果「大公雞5文錢一隻,大母雞3文錢一隻,小雞一文錢買三隻」,且a,b,c分別表示大公雞,大母雞,小雞,那麼......

if(5.0*a+3.0*b+c/3.0=100.0)對於這一句,是有問題的:

1,像樓上說的,就是「=」與"=="問題,應該是「==」。

2,"5.0*a+3.0*b+c/3.0==100.0"中,設x=c/3

,那麼你能保證

3*x==c

嗎???

顯然,是不能的,也就是說,小雞的數目不一定是3的倍數。而根據題目,顯然有c是3的倍數。這個問題用整除c%3==0來實現。

因此,正確的表示應該是:if(c%3==0&&(5.0*a+3.0*b+c/3.0==100.0))

這樣,就沒什麼問題了。

14樓:

程式沒有錯誤,但因為這種情況確實不存在,所以輸不出來。

不信的話,把if ((c%3==0)&&(a+b+c==100))改成if ((c%3==0)||(a+b+c==100))試試你就知道了

15樓:

這個程式如果在vc中肯定通不過編譯,首先#include "stdio.h" 有些不妥,最好寫成#include 第二void main()最好寫成int main(void)第三在程式的最後應該加上return 0

16樓:匿名使用者

#include "stdio.h"

void main()}}

百錢買百雞的流程圖

17樓:匿名使用者

#include 。

void main()。

{int mj,gj,xj,n=0;

printf(" 百元買百雞題求解方案\n") ;

printf(" ----------------------\n") ;

printf("\t母雞\t公雞\t小雞\n") ;

for(mj=0;mj<=100;mj++)for(gj=0;gj<=100;gj++){xj=100-mj-gj;

if(xj*0.5+mj*3+gj*2==100)

18樓:匿名使用者

因為母雞一元一隻不用考慮了

只考慮x只公雞y只小雞隻要x+y元就可以了結果就是:y=6x

**就是:

for(int x=0;x<21;x++)if(7*x<=100)cout<

19樓:匿名使用者

#include

#include

main()

20樓:

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

*題目分析與演算法設計設雞翁、雞母、雞雛的個數分別為x,y,z,題意給定共100錢要買百雞,若全買公雞最多買20只,顯然x的值在0~20之間;同理,y的取值範圍在0~33之間,可得到下面的不定方程: 5x+3y+z/3=100 x+y+z=100 所以此問題可歸結為求這個不定方程的整數解。由程式設計實現不定方程的求解與手工計算不同。

在分析確定方程中未知數變化範圍的前提下,可通過對未知數可變範圍的窮舉,驗證方程在什麼情況下成立,從而得到相應的解。 *程式說明與註釋:

#include void main() }

*執行結果 : follwing are possible plans to buy 100 fowls with 100 yuan. 1:

cock=0 hen=25 chicken=75 2:cock=4 hen=18 chicken=78 3:cock=8 hen=11 chicken=81 4:

cock=12 hen=4 chicken=84

*總是的進一步討論這類求解不定方程總理的實現,各層迴圈的控制變數直接與方程未知數有關,且採用對未知數的取值範上窮舉和組合的方法來複蓋可能得到的全部各組解。能否根據題意更合理的設定迴圈控制條件來減少這種窮舉和組合的次數,提高程式的執行效率,請讀者考慮

參考資料

百錢買百雞問題,望高手多種方法解決,高高懸賞哦!

21樓:匿名使用者

設公雞x只,母雞y只,小雞z只,得方程組:

x+y+z=100,5x+3y+1/3z=100.

2式乘以3減1式,化簡的y=25-7/4x。

然後求正整數解,得3組解:

x1=4,y1=18,z1=78;

x2=8,y2=11,z2=81;

x3=12,y3=4,z3=84.

22樓:徐芷蘭

看到各位大大的解答後突然讓我生出解答一遍的想法,可能不用大範圍窮舉能夠鎖定幾個值,但是沒有窮舉的答案完整,求補全。

現有5x+3y+z/3=100

x+y+z=100

由題意可得x=3y/5,y=5x/3

兩個三元式可得:

7x+4y=100

將由題意所得二式代入可得

y=500/44

x=300/38

化簡後可得

x約=7.89……

y約=11.36……

四捨五入後可得x,y值分別為8,11

可得z=81

雕蟲小技,見笑大方,若能聽得高見必將感激致至。

用百尺竿頭造句,誰能用百尺竿頭,更進一步造句

祝你在新的一年裡百尺竿頭,更進一步!為百尺竿頭謀進取,敢於潮頭唱大風。我們必須百尺竿頭,更進一步,才能達到目的。祝你在新的一年裡百尺竿頭,更進一步!為百尺竿頭謀進取,敢於潮頭唱大風。祝你新學期百尺竿頭,更進一步!譯 祝您在新的一年裡百尺竿頭,更進一步。對我個人來說,必須百尺竿頭,更進一步,才能得到教...

百尺竿頭,更進一步。這話是什麼意思?

百尺竿頭,更進一步。意指學問 成績等達到很高程度後繼續努力,爭取更大進步 語出 宋 釋道原 景德傳燈錄 卷十 師示一偈曰 百丈竿頭不動人,雖然得入未為真。百尺竿頭須進步,十方世界是全身。佛家語,比喻道行 造詣雖深,仍需修煉提高。比喻雖已達到很高的境地,但不能滿足,還需進一步努力。你好,概括來講,就是...

高分求對聯高分求對聯百尺竿頭更進一步,下聯以嘉字開頭

九園天地,春華秋實皆乾坤 風輕雨疏,纖竹婆娑,一軸九園滿是春 萬里山河,冬去春來盡寰宇 天高雲淡,飛鳥矯健,九州萬里亦留情 萬里山河,水暖山秀容寰宇 綠波韻語,殤影依依,獨步萬里我自憐 九園天地,春華秋實皆乾坤,風輕雨疏,纖竹婆娑,一軸九園滿是春 千年古剎,晨鐘暮鼓盡禪道,身強體健,經聲洪亮,不消千...