1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        新教材習(xí)題解析之python循環(huán)結(jié)構(gòu)(2)

        共 1954字,需瀏覽 4分鐘

         ·

        2021-06-27 02:49

        說在前面

        下學(xué)期開始,絕大多數(shù)學(xué)校就要開始上新教材內(nèi)容了,必修一《數(shù)據(jù)與計算》的主要內(nèi)容是Python語言學(xué)習(xí)。新教材的理念是編程教學(xué)不應(yīng)該只教語法,更重要的是教學(xué)生如何解決問題,如何使用計算機(jī)編程解決實際問題。所以命題的思路不應(yīng)該是摳語法,應(yīng)盡量避免考查語法細(xì)節(jié),要把重點放在數(shù)學(xué)建模和解決問題上面。

        受《新時代領(lǐng)航技術(shù)同步用書》編委會的邀請,我也嘗試著編制了一些題目,盡可能按照新課標(biāo)的要求,力求能夠激發(fā)學(xué)生思考和考查學(xué)生的計算思維。

        上次已經(jīng)和大家分享了2道關(guān)于Python循環(huán)結(jié)構(gòu)的開放性題目,由于循環(huán)結(jié)構(gòu)是編程教學(xué)的一個難點,必須多加練習(xí)才能掌握,所以今天繼續(xù)和大家分享2道相同類型的題目。

        由于新教材是塊新大陸,我們都是在摸索前行,加之本人水平有限,在描述題目用語和控制題目難度方面都存在不足,敬請大家批評指正。



        例6.(開放題)李白買酒。李白街上走,提壺去買酒。遇店加一倍,見花喝一斗。店不相鄰開,花不成雙長。三遇店和花,喝光壺中酒。請問此壺中,原有多少酒?

        (1)“店不相鄰開,花不成雙長”是什么意思?

        (2)李白喝酒和買酒有什么規(guī)律?這個規(guī)律重復(fù)了幾次?

        (3)要計算酒壺中原有多少酒,可以從后向前倒推,利用重復(fù)的規(guī)律推導(dǎo)出原有酒的數(shù)量,你打算使用哪種算法結(jié)構(gòu)來編程實現(xiàn)上述功能?請寫出具體的代碼,并添加必要的注釋。



        解析:(1)“店不相鄰開,花不成雙長”的意思是不會連續(xù)的經(jīng)過酒店和花,即不會連續(xù)的添酒和喝酒。

        (2)李白喝酒的規(guī)律是“遇店加一倍,見花喝一斗”,這個規(guī)律重復(fù)了3次。

        (3)要計算酒壺中原有多少酒,可以從后向前倒推,最后喝完為0,往前遇到鮮花加1斗,再往前遇到酒店減為一半。如此操作三次之后,得到的數(shù)字即為初始狀態(tài)時酒的數(shù)量??梢允褂醚h(huán)結(jié)構(gòu)來實現(xiàn)算法功能,參考代碼如下:

        a = 0 #存儲酒的數(shù)量,喝完時為0

        #從后向前倒推原有酒的數(shù)量

        for i in range(3):

            a += 1 #見花喝一斗

            a /= 2 #遇店加一倍

        print(a) #輸出原有酒的數(shù)量


        拓展思考:

        8.(開放題)廈門鼓浪嶼有一副很有趣的對聯(lián):霧鎖山頭山鎖霧;天連水尾水連天。它叫回文聯(lián),既可順讀,也可倒讀,頗具趣味,是我國的重要傳統(tǒng)文化之一。我們可以從鍵盤輸入一個字符串s,然后編寫程序判斷其是否為回文字符串。

        判斷字符串s是否為回文字符串,最簡單的方法是比較一下順序和逆序字符串是否相等,即判斷ss[::-1]是否相等。除此之外,我們也可以利用循環(huán)語句,遍歷字符串逐個比較左右兩端的字符是否相等。下面的程序?qū)崿F(xiàn)了前述功能,請將缺失的代碼補(bǔ)充完整,并思考是否有其他方法來判斷回文字符串。

        s = input('請輸入一個字符串:')

        L, R = 0, len(s) - 1

        while ①             :

             if s[L] != s[R]:

                 print(s, '不是回文字符串')

                 ②            

             L, R = ③               

        else:

            print(s, '是回文字符串')

        需要本文word版和拓展思考答案的,可以加入“Python算法之旅”知識星球參與討論和下載文件,Python算法之旅”知識星球匯集了數(shù)量眾多的同好,更多有趣的話題在這里討論,更多有用的資料在這里分享。

        我們專注Python算法,感興趣就一起來!

        相關(guān)優(yōu)秀文章:

        閱讀代碼和寫更好的代碼

        最有效的學(xué)習(xí)方式

        函數(shù)與模塊典型例題

        字符串專題之中文大寫金額數(shù)字轉(zhuǎn)換工具

        新教材習(xí)題解析之python循環(huán)結(jié)構(gòu)

        瀏覽 185
        點贊
        評論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點贊
        評論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            久操手机在线精品免费视频 | 侵犯双性稚嫩小少爷h视频 | 污污免费视频 | 77777成人综合网站 | 女生被操视频网站 | 91成人在线视频 | 欧美电影一级片 | 久久少妇免费视频 | 热99在线 | 舔女生下面视频 |