国产网曝门99视频在线看_免费看片a级毛片免费看_4hu四虎永久在线观看_高清无套内精线观看456_国产欧美亚洲日韩久久福利_av在线无码观看另类重口_欧美精品一二三区较多收藏_欧美老熟妇伦视频_婷婷六月综合激情_最新国产成人野战在线观看


站長在線經(jīng)典Python題:使用Python編程思想解決雞兔同籠的問題的4種方法

    時間: 瀏覽:1797次  來源:站長在線
歡迎你來到站長在線的Python題庫,雞兔寫完Python教程以后,還是來一個Python的題目吧!想來想去,還是寫一個經(jīng)典的題目為好,作為本欄目的第一個題目。我就想到了比較熱門的題目《雞兔同籠的問題》,本文不是用數(shù)學的方法,而是用Python編程的方法解決雞兔同籠的問題。用的就是《Python中的三大程序結構》: 順序結構、選擇結構和循環(huán)結構。解決問題具體的方法就是;順序語句假設法、選擇語句判定法、while循環(huán)語句遍歷法、for循環(huán)語句遍歷法。下面我來一一解答:

歡迎你來到站長在線的python題庫,雞兔寫完Python教程以后,還是來一個Python的題目吧!想來想去,還是寫一個經(jīng)典的題目為好,作為本欄目的第一個題目。我就想到了比較熱門的題目《雞兔同籠的問題》,本文不是用數(shù)學的方法,而是用Python編程的方法解決雞兔同籠的問題。解決問題具體的方法就是:順序語句假設法、選擇語句判定法、while循環(huán)語句遍歷法、for循環(huán)語句遍歷法。下面我來一一解答:


題目:有一些雞和兔子關在一個籠子里面,從上面數(shù),一共有10個頭;從下面數(shù),一共有36只腳。問:籠中有多少只雞和兔?

這里寫Python代碼的時候,涉及到幾個詞語的英語單詞,英語好的,就用英語,和我一樣英語差的就寫拼音,效果是一樣的。(當然使用中文漢字也是可以的,但是不建議使用中文漢字。)

雞:ji、chick

兔:tu、rabbit

頭:tou、head

腳:jiao、foot

雞腳:ji_jiao、chick_foot

兔腳:tu_jiao、rabbit_foot

接下來,用編程的思想,把題目已知條件,或者隱藏的條件,轉換成變量,輸入到Python里面。

1、順序語句假設法

解題思路和編程流程:

雞和兔的數(shù)量是10

雞腳和兔腳的數(shù)量是36

全部是雞時(即兔抬起兩只腳時,視為雞),腳的數(shù)量是10*2=20

總腳減去雞的腳,剩余腳的數(shù)量就是兔的腳,剩余36-20=16只腳,這抬起來的16只腳全部是兔子的

每只兔子都是抬起了2只腳,這抬起來的16只腳,其實就是16/2=8只兔子

因為兔是8只,雞就是10-8=2只

輸出雞和兔的數(shù)量

使用idle中文版新建文檔的名稱為:雞兔同籠.py,寫入以下代碼:

tou = 10                        # 雞頭和兔頭一共10只
jiao = 36                       # 雞腳和兔腳一共36只
ji_jiao = tou*2                 # 全部為雞時(即兔抬起兩只腳時,視為雞),雞的腳是頭的兩倍
tu_jiao = jiao - ji_jiao        # 抬起來的兩只腳就是兔子的腳
tu = tu_jiao // 2               # 兔等于抬起來的兩只腳的一半,這里用//(整除)而不是/(除)
ji = tou - tu                   # 雞的數(shù)量是總數(shù)減去兔的數(shù)量
print('雞的數(shù)量',ji)            # 輸出雞的數(shù)量
print('兔的數(shù)量',tu)            # 輸出兔的數(shù)量

運行結果為:

雞的數(shù)量 2
兔的數(shù)量 8
>>> 

2、選擇語句判定法

ji =int(input('請輸入一個1至10數(shù)值的整數(shù)'))
tu = 10 - ji
if (2*ji+4*(10-ji)==36) and (ji + tu == 10):
    print("雞:",ji,"兔:",tu)     # 輸出雞和兔的數(shù)量

運行結果:

輸入的值是1的時候,不符合條件,沒有顯示:

請輸入一個1至10數(shù)值的整數(shù)1
>>> 

當輸入的值是2的時候,符合條件,顯示結果:

請輸入一個1至10數(shù)值的整數(shù)2
雞: 2 兔: 8
>>> 

當然,這里總共才10,最多輸入10次,就滿足條件了,要是很大的數(shù)值的話,目前的方法還是不行的,可以使用下面的while循環(huán)和for循環(huán)。

3、while循環(huán)語句遍歷法

ji = 0
tu = 0
while ji <= 10  and  tu <= 10:
    if ji + tu == 10:
        print("雞%d只,有兔%d"%(ji,tu))
        if 2*ji + 4 * tu == 36:
            print("有雞%d只,有兔%d只"%(ji,tu))
            break
    ji += 1
    tu = 10 - ji

運行結果為:

雞1只,有兔9
雞2只,有兔8
有雞2只,有兔8只
>>> 

4、for循環(huán)語句遍歷法

for ji in range(0,10):                  # 雞的數(shù)量從1開始循環(huán)到10
    if 2*ji+4*(10-ji)==36:              # 2倍雞的腳+4倍兔的腳是36
        print("雞:",ji,"兔:",10-ji)     # 輸出雞和兔的數(shù)量

運行結果為:

雞: 2 兔: 8
>>> 

到此為止,本文的《雞兔同籠的問題》解決問題具體的方法就是:順序語句假設法、選擇語句判定法、while循環(huán)語句遍歷法、for循環(huán)語句遍歷法。已經(jīng)講解完畢了,有問題可以給我留言哦!



本文地址:http://003188.cn/pythonjitutonglong.html
碼字不易,打個賞唄
楊澤業(yè)感謝你的支持!

猜你喜歡

域名pythonw.cn出售

域名pythonw.cn的詳細信息:Python網(wǎng)

2022-08-06  分類:域名出售  瀏覽:1375次


站長在線Python教程:Python中類定義詳解

導讀:歡迎你來到站長在線的站長學堂學習Python知識,本文學習的是《Python中類定義詳解》。

2022-02-23  分類:Python學堂  瀏覽:1898次


站長在線Python教程:python中面向對象相關概述詳解

導讀:歡迎你來到站長在線的站長學堂學習Python知識,本文學習的是《python中面向對象相關概述詳解》。本文的主要內容有:面向對象是什么、面向對象中的對象是什么、Python中的類是什么、面向對象編程的特點有哪些?

2022-02-14  分類:Python學堂  瀏覽:1616次


站長在線零基礎Python完全自學教程23:函數(shù)的返回值、作用域和匿名函數(shù)

導讀:歡迎你來到站長學堂,學習站長在線出品的在線課程《零基礎 Python完全自學教程》今天給大家分享的是第23課《函數(shù)的返回值、作用域和匿名函數(shù)》。本文是一個大課程分成了下面4節(jié)小課程:Python中函數(shù)的返回值、Python函數(shù)中的局部變量、Python函數(shù)中的全局變量、Python函數(shù)中的匿名函數(shù)等內容。

2022-02-09  分類:Python學堂  瀏覽:1486次


站長在線Python教程:Python函數(shù)中的匿名函數(shù)詳解

歡迎你來到站長在線的站長學堂學習Python知識,本文學習的是《Python函數(shù)中的匿名函數(shù)詳解》。本文的主要內容有:匿名函數(shù)的定義、匿名函數(shù)的表達式、匿名函數(shù)的注意點、匿名函數(shù)的優(yōu)點、匿名函數(shù)的應用舉例。

2022-02-01  分類:Python學堂  瀏覽:1602次


站長在線Python教程精講:在Python函數(shù)中的全局變量詳解

歡迎你來到站長在線的站長學堂學習Python知識,本文學習的是《Python中的全局變量詳解》。本文的主要內容有:什么是全局變量、在函數(shù)外部定義的變量是全局變量、在函數(shù)內部定義中添加global關鍵詞后變成全局變量。

2022-01-10  分類:Python學堂  瀏覽:1718次


站長在線Python教程精講:在Python函數(shù)中的局部變量詳解

導讀:歡迎你來到站長在線的站長學堂學習Python知識,本文學習的是《在Python函數(shù)中的局部變量詳解》。本文的主要內容有:變量的作用域的概念、局部變量的概念、局部變量的舉例。

2022-01-06  分類:Python學堂  瀏覽:1620次


Python常用英語及用法

站長在線站長,準備系統(tǒng)的學習Python知識,但是對我來說,英語實在是太差了,當然我知道的是,不僅僅我,很多人在學習Python的時候,也是不知道這些英語單詞的意思與用法的,在這里站長在線站長就把這些英語整理出來,把英語以及中文意思、用法一起貼出來,讓大家一起來學習。

2022-01-02  分類:Python學堂  瀏覽:1833次


站長在線Python精講:Python中函數(shù)的返回值

導讀:歡迎你來到站長在線的站長學堂學習Python知識,本文學習的是《Python中函數(shù)的返回值》。本文的主要內容有:函數(shù)的返回值的含義、函數(shù)設置返回值的作用、return語句位置與多條 return語句的總結。

2021-12-29  分類:Python學堂  瀏覽:1792次


站長在線零基礎Python完全自學教程22:在Python中函數(shù)的參數(shù)傳遞

歡迎你來到站長學堂,學習站長在線出品的在線課程《零基礎 Python完全自學教程》今天給大家分享的是第22課《在Python中函數(shù)的參數(shù)傳遞》。本文是一個大課程分成了下面5節(jié)小課程:在Python函數(shù)中理解形式參數(shù)和實際參數(shù)、在Python函數(shù)中參數(shù)傳遞的位置參數(shù)詳解、在Python函數(shù)中的關鍵字參數(shù)詳解、在Python函數(shù)中的默認參數(shù)詳解、在Python函數(shù)中的可變參數(shù)詳解。

2021-12-26  分類:Python學堂  瀏覽:1582次