999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Python求解“雞兔同籠”升級版

2020-01-13 09:46:29牟曉東
電腦報 2020年46期
關鍵詞:程序用戶

牟曉東

“雞兔同籠”趣題最早記載于1500多年前的中國古代數學著作《孫子算經》中的“卷下”第31題(后傳至日本演變為“鶴龜算”),原題為:“今有雉兔同籠,上有三十五頭,下有九十四足,問雉兔各幾何?”意思是“雞和兔的總頭數是35,總腳數是94,雞和兔各有幾只?”。

1.問題求解

假設雞有x只,兔有y只,根據題意列方程為:

x+y=35,2x+4y=94。

求解,得:x=23,y=12;即雞有23只(46只腳)、兔有12只(48只腳)。

2.Python編程求解

如果使用Python語言來編寫程序的話,可使用for循環、range()函數和if條件判斷來完成。先使用“heads = 35”和“feet = 94”兩個賦值語句,保存雞和兔的總頭數和總腳數;接著使用range()函數進行for循環,讓雞的數目從1開始計數加1循環,循環體中的if條件為“2*x + 4*y == feet”,即“雞數目的兩倍加兔數目的四倍之和等于總腳數”,條件成立的話,使用print語句進行最終雞兔數目的輸出。保存程序為“雞兔同籠1.py”,運行結果顯示為“雞有 23 只,兔有 12 只。”(如圖1)。

3.升級版的“雞兔同籠”

考慮到“雞兔同籠”原題中所給出的總頭數和總腳數是固定的35和94,因此最終的求解也是固定的“23只雞、12只兔”。如果將題目進行“升級”,雞和兔的總頭數與總腳數均由用戶從鍵盤輸入,仍然來求雞和兔的數目,應該如何編寫程序代碼呢?

首先使用標準輸入函數input來接收用戶從鍵盤上輸入的信息,比如“heads = input('請輸入雞和兔的總頭數:')”和“feet = input('請輸入雞和兔的總腳數:')”。但在此需要特別注意的是,Python的input函數接收到的輸入數據是str字符串(雖然表面上看是數字),必須要使用int來轉換成整數型才能進行數學運算,語句為“heads = int(heads)”和“feet = int(feet)”。

接下來仍然是使用range()函數進行for循環:“for x in range(0,(heads+1))”。此時要充分考慮到用戶所輸入數據的計算結果,很有可能會出現“只有雞”或“只有兔”的情況。舉例:用戶輸入的總頭數是10、總腳數是20,運算結果就應該是“10只雞、0只兔”;或輸入總頭數是10、總腳數是40,運算結果則是“0只雞、10只兔”。因為在計算機編程語言中,數字0總是被看作是最起始的值,Python的列表、字符串和元組等的元素均是從0開始進行索引的。不管是“0只雞”還是“0只兔”,在計算機看來,這都是“雞兔同籠”,只不過數目是0而已。另外,由于range()函數的兩個參數是“左閉右開”型的區間,即第一個參數是被計算在內,而第二個參數卻是不包括在內的(只計算到它的前一個元素);所以,第二個參數應該設置為“heads+1”,這樣就能在循環時計算到它的前一個元素(即“heads”),也就是“0只兔”的情況(“x=0”則是“0只雞”)(如圖2)。

循環體與之前類似,仍然是if條件判斷“2*x + 4*y == feet”是否成立,成立的話則使用print輸出結果,然后使用break語句跳出循環。因為不確定用戶從鍵盤上輸入的兩個數據是否恰好為“有效解”——雞和兔的數目必須是整數只,所以在循環體外應該再添加一個“if 2*x + 4*y != feet”判斷語句,將這種無法進行整數結果計算的情況進行提示:“輸入的總頭數和總腳數不合法”。沒有該print語句的話,程序也能正常運行,但對于這種“意外”沒有任何提示,程序缺少必要的友好性(如圖3)。

最后將程序保存為“雞兔同籠2.py”,運行幾次進行測試,輸入的總頭數和總腳數包括原題目中的“35、94”、雞兔各為0只、“30、110”四種合法數值,程序均輸出了正確的計算結果;最后一個測試輸入“8、100”,結果就提示“輸入的總頭數和總腳數不合法”(如圖4)。

猜你喜歡
程序用戶
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
Camera360:拍出5億用戶
創業家(2015年10期)2015-02-27 07:55:08
100萬用戶
創業家(2015年10期)2015-02-27 07:54:39
主站蜘蛛池模板: 欲色天天综合网| 91在线免费公开视频| 日本91在线| 国产日韩精品欧美一区喷| 免费不卡在线观看av| 亚洲成人手机在线| 成年人久久黄色网站| 99视频在线免费观看| 久久久久国产精品熟女影院| 色天堂无毒不卡| 欧美69视频在线| 欧美性猛交xxxx乱大交极品| 免费黄色国产视频| 制服丝袜一区| 欧美综合在线观看| 成人一区专区在线观看| 白浆视频在线观看| 国产免费a级片| 色综合久久88| 99在线视频免费观看| 五月综合色婷婷| 久久这里只有精品国产99| 亚洲人网站| 激情综合图区| 国产成人亚洲精品无码电影| 三上悠亚在线精品二区| 嫩草在线视频| 精品无码专区亚洲| 国产日产欧美精品| 一级毛片在线播放| 夜夜操天天摸| 亚洲h视频在线| 成年A级毛片| 国产激情无码一区二区三区免费| 亚洲欧洲日产国产无码AV| 91九色国产porny| 91精品啪在线观看国产91| 日本午夜视频在线观看| 日韩A∨精品日韩精品无码| 国产精品青青| 亚洲一级无毛片无码在线免费视频| 国产视频久久久久| 国产精品理论片| 欧美日韩资源| 日韩精品无码免费一区二区三区| 国产熟女一级毛片| 天天综合网色中文字幕| 欧洲亚洲欧美国产日本高清| 91精品免费久久久| 在线一级毛片| 第一页亚洲| 亚洲精品福利视频| 91精品啪在线观看国产| 精品无码日韩国产不卡av | 欧美色伊人| 日韩AV无码一区| 青青操国产| 青青操国产视频| 国产成人精品高清不卡在线| 国产精品九九视频| 麻豆国产原创视频在线播放| 超碰aⅴ人人做人人爽欧美 | 亚洲Va中文字幕久久一区| 国产高清国内精品福利| 国产在线精品99一区不卡| 久久9966精品国产免费| 欧美性精品| 青草视频免费在线观看| 夜夜操国产| 欧美中日韩在线| 青青青草国产| 国产亚洲欧美日韩在线一区| 久久激情影院| 国产自在线拍| 91精品国产无线乱码在线| 精品国产一二三区| 69国产精品视频免费| 一级看片免费视频| 日韩视频福利| 亚洲成A人V欧美综合| 欧美日韩中文国产va另类| 免费观看无遮挡www的小视频|