資源簡介 (共32張PPT)3.算法的程序?qū)崿F(xiàn)(2)主講人:***浙教版信息技術(shù)必修一《數(shù)據(jù)與計算》【知識體系】【知識梳理】二、Python語言程序設(shè)計(二)順序結(jié)構(gòu)的程序?qū)崿F(xiàn)1.程序樣例將兩個整型變量a,b的值互換‘#’后面的內(nèi)容為注釋,對程序代碼進行解釋、說明,程序運行時不執(zhí)行。拓展:兩個變量值的互換也可表示為a,b=b,a。【知識梳理】二、Python語言程序設(shè)計(二)順序結(jié)構(gòu)的程序?qū)崿F(xiàn)2.Python常見內(nèi)建函數(shù)(1)input([prompt]):獲取輸入,函數(shù)的參數(shù)為輸出提示字符,返回值為字符串類型(2)print():輸出內(nèi)容到控制臺。當參數(shù)只有一個,會自動將非字符類型轉(zhuǎn)為字符類型后輸出。當參數(shù)有多個,可以用逗號連接后轉(zhuǎn)換位字符串輸出。例:print(10);print(10,”全”,10,”美”)(3)int(object[,base]):將數(shù)值字符串轉(zhuǎn)為整數(shù)類型,base聲明進制類型,默認base=10。返回值為十進制整數(shù)類型。例int(“FF”,16)=255【知識梳理】二、Python語言程序設(shè)計(二)順序結(jié)構(gòu)的程序?qū)崿F(xiàn)2.Python常見內(nèi)建函數(shù)【知識梳理】二、Python語言程序設(shè)計(三)分支結(jié)構(gòu)的程序?qū)崿F(xiàn)1.if語句一般格式條件是一個表達式,它的值可以是真(True)或假(False)。當條件為真時,執(zhí)行語句塊1中的語句,否則(條件為假)執(zhí)行語句塊2中的語句。如果程序只需要對條件為真的情況做出處理,那么if 語句可省略else及語句塊2 部分,格式變成:【知識梳理】二、Python語言程序設(shè)計(三)分支結(jié)構(gòu)的程序?qū)崿F(xiàn)1.if語句一般格式(1)Python中行位冒號的作用是告訴Python接下來要創(chuàng)建一個新的語句塊,因此冒號結(jié)尾后,接下來應(yīng)該有縮進(2)Python用代碼縮進表示代碼間的包含關(guān)系,同一級別代碼縮進相同(3)當<判斷條件>為True才執(zhí)行對應(yīng)分支語句塊【知識梳理】二、Python語言程序設(shè)計(三)分支結(jié)構(gòu)的程序?qū)崿F(xiàn)2.if-elif語句當程序需要對多個條件進行判定時,可以用帶有elif子句的if語句來實現(xiàn),其格式為:(1)一個if語句可以包含多個elif語句,最后一個else子句是可選的,僅當其if語句中的條件為假時才執(zhí)行。(2)elif 和 else 并非必須,且當前面有條件(if)滿足后,后面的判斷(elif)會直接跳過,不執(zhí)行。【知識梳理】二、Python語言程序設(shè)計(三)分支結(jié)構(gòu)的程序?qū)崿F(xiàn)3.樣例程序【知識梳理】二、Python語言程序設(shè)計(四)循環(huán)結(jié)構(gòu)的程序?qū)崿F(xiàn)1.for語句格式為:(1)for語句通過遍歷序列中的元素實現(xiàn)循環(huán),序列中的元素會被依次賦值給變量,然后執(zhí)行一次循環(huán)體。當序列中的元素全部遍歷完時,程序會自動退出循環(huán),繼續(xù)執(zhí)行else子句中的語句塊(該else子句可選)。(2)for循環(huán)是有限次循環(huán),<循環(huán)對象>可以是字符串、列表,也可以是range()函數(shù)。【知識梳理】二、Python語言程序設(shè)計(四)循環(huán)結(jié)構(gòu)的程序?qū)崿F(xiàn)1.for語句格式為:(3)range(start,stop,step)格式和字符串或列表切片類似。如range(0,10,1)能生成0-9這10個整數(shù)序列。start缺省時默認值為0,步長step缺省時默認值為1.(4)continue:結(jié)束當前次循環(huán),進入下一次循環(huán)(5)break:若循環(huán)過程中執(zhí)行了循環(huán)體中的break語句,則程序會中途退出for語句,轉(zhuǎn)而去執(zhí)行for語句后面的語句(即使有else子句,該子句也不會被執(zhí)行)。【知識梳理】二、Python語言程序設(shè)計(四)循環(huán)結(jié)構(gòu)的程序?qū)崿F(xiàn)1.for語句樣例程序:【知識梳理】二、Python語言程序設(shè)計(四)循環(huán)結(jié)構(gòu)的程序?qū)崿F(xiàn)2.while語句當一個循環(huán)執(zhí)行之前,可能并不知道它需要執(zhí)行的次數(shù)。這時,就可以使用while循環(huán)。其常見格式如下:(1)while循環(huán)在執(zhí)行時,首先會判斷條件是否為真,如果條件為真,執(zhí)行一次循環(huán)體,再次判斷條件是否為真,如果仍為真,那么再執(zhí)行一次循環(huán)體,以此類推,直到條件為假時退出while 語句。【知識梳理】二、Python語言程序設(shè)計(四)循環(huán)結(jié)構(gòu)的程序?qū)崿F(xiàn)2.while語句當一個循環(huán)執(zhí)行之前,可能并不知道它需要執(zhí)行的次數(shù)。這時,就可以使用while循環(huán)。其常見格式如下:(2)while語句的判斷條件如果不當,可能會造成“無限循環(huán)”。(3)break:結(jié)束并退出當前層循環(huán)(4)continue:結(jié)束當前次循環(huán),進入下一次循環(huán)【知識梳理】二、Python語言程序設(shè)計(四)循環(huán)結(jié)構(gòu)的程序?qū)崿F(xiàn)2.while語句(5)樣例程序【知識梳理】二、Python語言程序設(shè)計(五)函數(shù)與模塊1.函數(shù)的構(gòu)造及應(yīng)用(1)函數(shù)名的命名規(guī)則和變量名一樣。完成函數(shù)的構(gòu)造后,在程序中就可以根據(jù)需要調(diào)用該函數(shù)。(2)函數(shù)參數(shù)可以設(shè)置默認值:<參數(shù)3>=<默認值>(3)return 語句用于返還函數(shù)處理結(jié)果,并且結(jié)束函數(shù)運行(4)函數(shù)內(nèi)部變量為局部變量,當需要使用全局變量時需要用global聲明【知識梳理】二、Python語言程序設(shè)計(五)函數(shù)與模塊2.模塊的導(dǎo)入及應(yīng)用(1)導(dǎo)入函數(shù)模塊的方法使用import語句或from-import語句可導(dǎo)入模塊,具體用法包括以下4種:①import <庫名>②import <庫名> as <重命名>③from <庫名> import <函數(shù)名>④from <庫名> import *【知識梳理】二、Python語言程序設(shè)計(五)函數(shù)與模塊2.模塊的導(dǎo)入及應(yīng)用(2)math模塊【知識梳理】二、Python語言程序設(shè)計(五)函數(shù)與模塊2.模塊的導(dǎo)入及應(yīng)用(3)random模塊【知識梳理】二、Python語言程序設(shè)計(五)函數(shù)與模塊2.模塊的導(dǎo)入及應(yīng)用(4)Image模塊Image 模塊是PIL 庫(Python Imaging Library)中的重要模塊,可以獲取圖像尺寸和像素顏色、旋轉(zhuǎn)圖像或改變圖像格式等。【知識梳理】二、Python語言程序設(shè)計(五)函數(shù)與模塊2.模塊的導(dǎo)入及應(yīng)用(5)其他模塊用于實現(xiàn)部分操作系統(tǒng)功能(可用于文件、目錄等操作)的os模塊;與時間處理有關(guān)的time模塊;可以實現(xiàn)科學計算、數(shù)據(jù)可視化的numpy和matplotlib;用于多媒體開發(fā)和游戲軟件開發(fā)的pygame模塊;支持圖形處理的tkinter。【知識梳理】三、簡單算法及其程序?qū)崿F(xiàn)(一)解析算法及其程序?qū)崿F(xiàn)用數(shù)學公式或解題步驟計算結(jié)果樣例:雞兔同籠問題:今有雉兔同籠,上有三十五頭,下有九十四足,問雉兔各幾何 head,foot = eval(input("請輸入頭和足的數(shù)量,格式是:頭,足"))rabbit = (foot-head*2)/2chick = head-rabbitprint("兔子有{}只,雞有{}只".format(rabbit,chick)【知識梳理】三、簡單算法及其程序?qū)崿F(xiàn)(二)枚舉算法及其程序?qū)崿F(xiàn)枚舉算法的基本思想是把按一定的順序一一列舉問題所有可能的解,然后判斷每一個列舉出的可能解是否為正確的解。在枚舉算法的程序?qū)崿F(xiàn)中,逐一列舉出每一個可能解,判斷其是否為正確解的過程可采用循環(huán)結(jié)構(gòu)來實現(xiàn)。而在利用問題提供的約束條件篩選、判斷解的過程中則需要用到分支結(jié)構(gòu)。【知識梳理】三、簡單算法及其程序?qū)崿F(xiàn)(二)枚舉算法及其程序?qū)崿F(xiàn)枚舉算法的基本思想是把按一定的順序一一列舉問題所有可能的解,然后判斷每一個列舉出的可能解是否為正確的解。樣例:head,foot = eval(input("請輸入頭和足的數(shù)量,格式是:頭,足"))for rabbit in range(foot//4):if rabbit*4+(head-rabbit)*2==foot:print("兔子有{}只,雞有{}只".format(rabbit,head-rabbit))【知識梳理】三、簡單算法及其程序?qū)崿F(xiàn)(三)算法程序?qū)崿F(xiàn)的綜合應(yīng)用【典型例題】1.設(shè)a=2,b=3,c=4,d=5,表達式a>b and c<=d or 2*a>c的值是( )A.True B.False C.-1 D.1B【典型例題】2.列表a存儲某校部分學生的姓名、身高(cm),編程求身高最高的學生姓名,python代碼如下:程序運行結(jié)果如下:最高的學生姓名是小李a=[["小麗",169],["小明",167],["小紅",166],["小李",179],["小吳",171],["小剛",177]]stui=0for i in range(len(a)):if ① :stui=iprint("最高的學生姓名是",② )C上述程序段①、②處的語句分別為( )A.①a[i]>a[stui] ②a[stui][0]B.①a[i]>a[stui] ②a[i][0]C.①a[i][1]>a[stui][1] ②a[stui][0]D.①a[i][1]>a[stui][1] ②a[i][0]【典型例題】3.列表a中有10個數(shù)據(jù),用如下程序段找出大于60的數(shù)的個數(shù),畫線處可以填( )a=[35,23,98,43,86,31,29,57,62,78]n=θm=6θfor i in a:if _____:n+= 1print("個數(shù): ",n)A.a(chǎn)[i]>m B.i>m C.a(chǎn)>m D.a(chǎn)(i)>mB【典型例題】4.將正整數(shù)n分解為兩個正整數(shù)之和,其中一個能3整除,另一個能被7整除。統(tǒng)計分解方法共有幾種的Python程序段如下:方框中的代碼由以下三部分組成:① i = i + 7 ② j = n – i ③ if j % 3 == 0 : (換行)) cnt = cnt + 1下列選項中,代碼順序正確的是( )A.①③② B.②③① C.③②① D.②①③B【典型例題】5.運行以下Python代碼的結(jié)果是( )A.A B.B C.C D.DC【典型例題】6.有如下 Python程序段:from random import *a = [10,20,30,40,50]key = randint(0, 100)# randint(p,q)用于生成區(qū)間[p,q]內(nèi)的隨機整數(shù)x = y = 0i,j = 0, len(a) - 1while i <= j:m = randint(i,j)x += 1if a[m] < key:i = m + 1y += 1else:j = m - 1y -= 1C執(zhí)行該程序后,下列說法不正確的是( )A.變量 x和y的值可能為1 和-1B.變量 x 和 y的值可能為4 和-2C.若 key為50, 則變量x和y的值可能為5和5D.若 key為35, 則變量x和y的值可能為5和1Thanks主講人:*** 展開更多...... 收起↑ 資源預(yù)覽 縮略圖、資源來源于二一教育資源庫