Python3程序設(shè)計(jì)(第3版) 課件 第4章 Python程序的流程_第1頁
Python3程序設(shè)計(jì)(第3版) 課件 第4章 Python程序的流程_第2頁
Python3程序設(shè)計(jì)(第3版) 課件 第4章 Python程序的流程_第3頁
Python3程序設(shè)計(jì)(第3版) 課件 第4章 Python程序的流程_第4頁
Python3程序設(shè)計(jì)(第3版) 課件 第4章 Python程序的流程_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

Python程序的流程4.1程序設(shè)計(jì)流程流程圖是一種傳統(tǒng)的、應(yīng)用廣泛的程序設(shè)計(jì)表示工具,也稱程序框圖。程序流程圖表達(dá)直觀、清晰,易于學(xué)習(xí)和掌握,獨(dú)立于任何一種程序設(shè)計(jì)語言。程序流程圖的基本元素:程序流程圖4.1.1控制流處理框判斷框起始框Python程序的流程4.1程序設(shè)計(jì)流程順序結(jié)構(gòu)是語句按照書寫的順序依次執(zhí)行。分支結(jié)構(gòu)又稱為選擇結(jié)構(gòu),根據(jù)計(jì)算所得的表達(dá)式的值來判斷應(yīng)選擇執(zhí)行哪一個(gè)流程的分支。循環(huán)結(jié)構(gòu)則是在一定條件下反復(fù)執(zhí)行一段語句的流程結(jié)構(gòu)。結(jié)構(gòu)化程序設(shè)計(jì)的基本流程4.1.2順序結(jié)構(gòu)選擇結(jié)構(gòu)循環(huán)結(jié)構(gòu)Python程序的流程4.1程序設(shè)計(jì)流程問題:輸入任意半徑值,求其對(duì)應(yīng)圓的面積,并顯示。順序結(jié)構(gòu)程序設(shè)計(jì)實(shí)例4.1.3開始輸入半徑計(jì)算面積顯示面積結(jié)束算法:1.輸入圓的半徑。2.計(jì)算圓的面積3.顯示圓的面積

r=eval(input(“請(qǐng)輸入圓的半徑:”))s=3.14*r*rprint(“圓的面積是:”,s)Python程序的流程4.2分支結(jié)構(gòu)1.簡(jiǎn)單分支結(jié)構(gòu):if語句………….if<boolCondition>:<statements>………….開始語句塊結(jié)束判斷條件真假鍵盤輸入數(shù)字5,以下代碼的輸出結(jié)果是______。n=eval(input("請(qǐng)輸入一個(gè)整數(shù):"))s=0ifn>=5:n-=1s=4ifn<5:n-=1s=3print(s)0423ABCD單選題Python程序的流程4.2分支結(jié)構(gòu)2.選擇分支結(jié)構(gòu):if-else語句…………if<boolCondition>:<statements1>else:<statements2>…………開始語句塊1結(jié)束判斷條件真假語句塊2Python程序的流程4.2分支結(jié)構(gòu)3.多分支結(jié)構(gòu):if-elif-else………….if<boolCondition1>:<statements1>elif<boolCondition2>:<statements2>……else:<statementsn>…………Python程序的流程4.2分支結(jié)構(gòu)4.分支的嵌套是指分支中還存在分支的情況,即if語句中還包含著if語句。Python程序的流程4.2分支結(jié)構(gòu)5.條件表達(dá)式條件表達(dá)式(也稱為三元操作符),可以用一條語句完成程序的選擇分支結(jié)構(gòu)。value1if<boolCondition>elsevalue2boolCondition是條件表達(dá)式,計(jì)算boolcondition的值,若為True,則整個(gè)表達(dá)式的結(jié)果是

value1;若為False,則結(jié)果是value2#ex0404.pyage=20message="成年"ifage>18else"未成年"print(message)以下程序的輸出結(jié)果是______。x=10y=0if(x>5)or(x/y>5):print('Right')else:print('Wrong')報(bào)錯(cuò):ZeroDivisionError不報(bào)錯(cuò),但不輸出任何結(jié)果WrongRightABCD單選題Python程序的流程4.3循環(huán)結(jié)構(gòu)遍歷循環(huán):for語句4.3.11.For循環(huán)結(jié)構(gòu)2.range()函數(shù)………for<var>in<seq>:<statements>……….有限次遍歷:foriinrange(n):#n為遍歷次數(shù)range(start,stop[,step])start:計(jì)數(shù)從start開始。默認(rèn)是從0開始。stop:計(jì)數(shù)到stop結(jié)束,但不包括stop。step:步長(zhǎng),默認(rèn)為1。開始語句塊結(jié)束系列中的元素有下一個(gè)元素系列中無元素以下程序的輸出結(jié)果是______。s=2foriinrange(1,10):s+=iprint(s)55574745ABCD單選題Python程序的流程4.3循環(huán)結(jié)構(gòu)條件循環(huán):while語句4.3.2條件循環(huán):while語句……….while<boolCondition>:<statements>………..開始語句塊結(jié)束判斷條件真假Python程序的流程4.3循環(huán)結(jié)構(gòu)循環(huán)的嵌套4.3.3無論是for循環(huán)還是while循環(huán),其中都可以再包括循環(huán),從而構(gòu)成了循環(huán)的嵌套。Python程序的流程4.4流程控制的其他語句跳轉(zhuǎn)語句4.4.11.break語句break語句的作用是從循環(huán)體內(nèi)部跳出,即結(jié)束循環(huán)。也稱斷路語句,中斷循環(huán),不再執(zhí)行循環(huán)體。以下代碼的輸出結(jié)果是______。foriinrange(1,6):ifi%4==0:breakelse:print(i,end=",")1,2,3,5,1,2,3,4,

1,2,31,2,3,ABCD單選題Python程序的流程4.4流程控制的其他語句跳轉(zhuǎn)語句4.4.12.continue語句continue語句必須用于循環(huán)結(jié)構(gòu)中,作用是終止本輪循環(huán),跳過本輪剩余的語句,直接進(jìn)入下一輪循環(huán),也稱短路語句,只對(duì)本次循環(huán)短路,并不終止整個(gè)循環(huán)。Python程序的流程4.4流程控制的其他語句pass語句4.4.2Pass語句是空語句,是為了保持程序結(jié)構(gòu)完整性設(shè)計(jì)的。Pass語句是占位語句。循環(huán)結(jié)構(gòu)中的else語句4.4.3Python程序的流程4.5流程控制語句的應(yīng)用1.使用蒙特卡羅方法計(jì)算圓周率繪制一個(gè)圓及其外接正方形,假設(shè)圓的半徑是1,那么圓的面積是π,外接正方形的面積是4。隨機(jī)產(chǎn)生正方形內(nèi)的一個(gè)點(diǎn),該點(diǎn)落在圓內(nèi)的概率是:圓面積/正方形面積,即π/4.編程在正方形內(nèi)隨機(jī)產(chǎn)生10000個(gè)點(diǎn),落在圓內(nèi)點(diǎn)的數(shù)量用n表示。n的值10000×π/4。π的值為4×n/10000。判斷點(diǎn)(x,y)落在圓內(nèi)的公式是x2+y2<=1。產(chǎn)生隨機(jī)數(shù)使用了random模塊中的random()函數(shù)。importrandom

NUMBER=100000n=0foriinrange(NUMBER):x=random.random()*2-1y=random.random()*2-1if((x*x+y*y)<=1):n+=1pi=4.0*n/NUMBERprint(f"使用蒙特卡羅方法計(jì)算圓周率的值是:{pi}")Python程序的流程4.5流程控制語句的應(yīng)用2.使用萊布尼茨公式計(jì)算圓周率萊布尼茨公式可以表示為:π=4×(1?1/3+1/5-1/7+…+1/(2n-1)公式中的每一項(xiàng)的分母數(shù)值相差為2,正負(fù)符號(hào)交替出現(xiàn),且每一項(xiàng)的絕對(duì)值逐漸減小。為了使用萊布尼茨公式計(jì)算π的近似值,可以取級(jí)數(shù)的前n項(xiàng)進(jìn)行求和。因?yàn)檠h(huán)次數(shù)不確定,使用while循環(huán)是較好的選擇。為了得到較為精確的π值,取最后一項(xiàng)的絕對(duì)值小于1e-6為止.pi4,i=0,1#設(shè)定初值sign=1#用于改變符號(hào)while1/i>=1e-6:#最末項(xiàng)>=1e6時(shí)執(zhí)行循環(huán)pi4=pi4+sign*1/isign=-sign#改變符號(hào)i+=2#計(jì)算結(jié)果乘以4,得到圓周率值print(f"使用萊布尼茨方法計(jì)算圓周率的值是:{pi4*4}")Python程序的流程4.6利用AI工具解決編程中的問題(2)可以利用AI來學(xué)習(xí)一些我們不知道的問題,例如,Python新版本中增加的內(nèi)容,不了解的函數(shù)或關(guān)鍵字。利用DeepSeek解釋Python3.10后增加的match語

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論