国产日韩欧美一区二区三区综合,日本黄色免费在线,国产精品麻豆欧美日韩ww,色综合狠狠操

極客小將

您現在的位置是:首頁 » scratch編程資訊

資訊內容

如何用scratch解決百錢買百雞?

極客小將2021-03-02-
“scratch還可以這樣啊!”一位媽媽在看到自己的孩子用編程解決了一個古老的數學問題百錢買百雞,驚喜地發出這樣的感嘆。 公雞5錢一只,母雞3錢一只,小雞1錢三只,共有100錢數,要求如何用100錢買100只雞,且要求公雞、母雞、小

scratch還可以這樣啊!”一位媽媽在看到自己的孩子用編程解決了一個古老的數學問題百錢買百雞,驚喜地發出這樣的感嘆。

公雞5錢一只,母雞3錢一只,小雞1錢三只,共有100錢數,要求如何用100錢買100只雞,且要求公雞、母雞、小雞都有。問要買公雞多少只?母雞多少只?小雞多少只?

從現代數學觀點來看,實際上是一個求不定方程整數解的問題。解法如下:

設公雞、母雞、小雞分別為x、y、z 只,由題意得:有兩個方程,三個未知量,稱為不定方程組,則有多種解。

①……x+y+z =100

②……5x+3y+(1/3)z =100

下面再看看x,y,z的取值范圍。

由于只有100錢,由5x<100?=>?0<="" p="">

那如何用scratch來解決這一問題呢?新建三個變量“公雞的數量”、“母雞的數量”、“小雞的數量”,作為小學生可能還不能夠深刻理解用變量來表示算數表達式,如果類比數學應用題中的設未知數“x”、“y”、“z”,這便容易理解多了,這道題便是這樣,可以得到兩個關于變量的算數表達式。upload/article/images/2021-03-02/6a4fe601a55cc739cacda5900dbf58a7.jpg

百錢買百雞最適宜學習窮舉法(枚舉法),所謂窮舉法,顧名思義窮盡每一種可能性,通常在找不到解決問題的規律時對可能是解的眾多候選解按照某一順序進行逐一枚舉和檢驗,并從中找出那些符合要求的候選解作為問題的解。考慮到算法的時間復雜度空間復雜度還可以不斷優化,方法并不唯一。

scratch擁有計時器的功能,可以更加直觀的將程序執行所需時間顯示出來。

方法一:x的取值范圍為1~20, y的取值范圍為1~33,z的取值范圍為3~99(以3的數量增加),利用三層循環嵌套遍歷x、y、z的所有可能的組合。程序執行完成所花費的時間約為4秒,當然也可以簡化此程序。

upload/article/images/2021-03-02/14884885861860caedf75bd7886794e6.jpg

方法二:公雞的數量為x,母雞的數量為y,小雞的數量為z,從1開始窮舉小雞與母雞的數量,則公雞的數量為x=100-y-z,只需要兩層循環嵌套便可實現。程序執行完成所花費的時間約為0.5秒。

upload/article/images/2021-03-02/264bfc5c715a9a88a97949291cdb3bfd.jpg

方法三:一層循環的實現方法需要推算一下這個不定方程。

? ? x+y+z=100 ? ? ? ? ?①

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

?令②x3-① 可得

? ? 7x+4y=100

=>? ? ? ? ? ? ? ??y=25-(7/4)x ??? ? ? ?③

同理可推得? ?

?=>??? ? ? ? ? ? ?z=75+(3/4)x??? ? ? ?④

程序執行完成所花費的時間約為0.01秒。

upload/article/images/2021-03-02/cb494773cd1f6a84ed27075d907a45fa.jpg

學生通常會帶給老師很多啟發,這比老師帶給學生的更具沖擊感。解決這一問題,可能是根深蒂固的固有思維,我們往往窮舉雞的數量,但是,一次上課,一位同學設的變量為每種雞所花費的錢數,于是豁然開朗。

方法四:利用三層循環嵌套窮舉錢數,程序執行完成所花費的時間約為9.3秒。當然還可以繼續改進該程序,用兩層循環或者一層循環均可。

upload/article/images/2021-03-02/a116940dc5c8b1fa0bd3f74abe208206.jpg

考慮到每種雞都要有,則共有3組數成立:

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

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

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

聲明:本文章由網友投稿作為教育分享用途,如有侵權原作者可通過郵件及時和我們聯系刪除

預約試聽課

已有385人預約都是免費的,你也試試吧...

主站蜘蛛池模板: 开江县| 法库县| 安溪县| 保德县| 噶尔县| 宜兰市| 长泰县| 黑龙江省| 茶陵县| 枝江市| 卫辉市| 甘肃省| 札达县| 通榆县| 绍兴县| 德庆县| 梁河县| 长治市| 邹城市| 武山县| 焉耆| 河源市| 安福县| 城固县| 陇川县| 恩平市| 涟水县| 马边| 正阳县| 云梦县| 介休市| 麻栗坡县| 丹江口市| 堆龙德庆县| 罗源县| 积石山| 北京市| 安乡县| 鹤山市| 信丰县| 句容市|