運(yùn)用循環(huán)結(jié)構(gòu)描述問(wèn)題描述求解過(guò)程吧(一)課件_第1頁(yè)
運(yùn)用循環(huán)結(jié)構(gòu)描述問(wèn)題描述求解過(guò)程吧(一)課件_第2頁(yè)
運(yùn)用循環(huán)結(jié)構(gòu)描述問(wèn)題描述求解過(guò)程吧(一)課件_第3頁(yè)
運(yùn)用循環(huán)結(jié)構(gòu)描述問(wèn)題描述求解過(guò)程吧(一)課件_第4頁(yè)
運(yùn)用循環(huán)結(jié)構(gòu)描述問(wèn)題描述求解過(guò)程吧(一)課件_第5頁(yè)
已閱讀5頁(yè),還剩18頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

運(yùn)用循環(huán)結(jié)構(gòu)

描述問(wèn)題求解過(guò)程for循環(huán)

3、循環(huán)結(jié)構(gòu)while循環(huán)

循環(huán)嵌套循環(huán)控制復(fù)習(xí):三種基本控制結(jié)構(gòu)1、順序結(jié)構(gòu)2、選擇結(jié)構(gòu)導(dǎo)入問(wèn)題:百錢百雞問(wèn)題今有雞翁一,值錢五;雞母一,值錢三;雞雛三,值錢一。凡百錢買雞百只。問(wèn)雞翁母雛各幾何?【故事】相傳在南北朝時(shí)期(公元386年——公元589年),我國(guó)北方出了一個(gè)“神童”,他反映敏捷,計(jì)算能力超群,許多連大人一時(shí)也難以解答的問(wèn)題,他一下子就給算出來(lái)了。遠(yuǎn)遠(yuǎn)近近的人都喜歡找他計(jì)算數(shù)學(xué)問(wèn)題?!吧裢钡拿麣庠絹?lái)越大,傳到當(dāng)時(shí)宰相的耳中。有一天,宰相為了弄清“神童”是真是假,特地把“神童”的父親叫了去,給了他100文錢,讓第二天帶100只雞來(lái)。并規(guī)定100只雞中公雞、母雞和小雞都要有,而且不準(zhǔn)多,也不準(zhǔn)少,一定要?jiǎng)偤冒馘X百雞。當(dāng)時(shí),買1只公雞5文錢,買1只母雞3文錢,買3只小雞才1文錢。怎樣才能湊成百錢百雞呢?“神童”想了一會(huì),告訴父親說(shuō),只要送4只公雞、18只母雞和78只小雞就行了。第二天,宰相見(jiàn)到送來(lái)的雞正好滿足百錢百雞,大為驚奇。他想了一下,又給了100文錢,讓明天再送100只雞來(lái),還規(guī)定不準(zhǔn)只有4只公雞。這個(gè)問(wèn)題也沒(méi)有難住“神童”。他想了一會(huì),叫父親送8只公雞、11只母雞和81只小雞去。還告訴父親說(shuō),遇到類似問(wèn)題,只要怎樣怎樣就行了。第二天,宰相見(jiàn)到了送來(lái)的100只雞,贊嘆不已。他又給了100文錢,要求下次再送100只雞來(lái)。豈料才一會(huì)兒,“神童”的父親就送來(lái)了100只雞。宰相一數(shù):公雞12只、母雞4只、小雞84只,正好又滿足百錢百雞……。這個(gè)“神童”就是張丘建。他繼續(xù)勤奮學(xué)習(xí),終于成為一個(gè)著名的數(shù)學(xué)家。他的名著《張丘建算經(jīng)》里,最后一個(gè)題目就是這個(gè)有趣的“百雞問(wèn)題”。分析問(wèn)題變量(幾個(gè)?)變化范圍驗(yàn)證條件(幾個(gè)?)3個(gè),設(shè)公雞為x,母雞為y,小雞為zx:1----100?y:1----100?z:1----100?x+y+z=1005x+3y+z/3=100設(shè)計(jì)算法

算法描述:①令a=0②令b=0③令c=3④如果a+b+c=100且5a+3b+c/3=100,那么輸出a,b,c,若不是則轉(zhuǎn)⑤⑤如果c<100,則c+1返④⑥如果b<33,則b+1返③⑦如果a<20,則a+1返②⑧結(jié)束問(wèn)1:我們可以用什么程序結(jié)構(gòu)來(lái)解決這個(gè)問(wèn)題呢?for循環(huán)可以依次得到序列循環(huán)中的每個(gè)元素,并依次處理。for循環(huán)語(yǔ)句一般格式:

for

循環(huán)變量in

列表:

語(yǔ)句或語(yǔ)句組自主探究:課本86頁(yè)表4----9縮進(jìn)循環(huán)示例(有縮進(jìn)與無(wú)縮進(jìn)),感受for循環(huán)內(nèi)外縮進(jìn)體的不同問(wèn)題:編程求1-10的和?(參考課本86:列表的幾種表達(dá)方式)方法一:列表直接羅列sum=0foriin[1,2,3,4,5,6,7,8,9,10]:

sum=sum+iprint(sum)方法二:列表先定義后使用a=[1,2,3,4,5,6,7,8,9,10]sum=0foriina:

sum=sum+iprint(sum)小試牛刀注意:①for循環(huán)依次把列表中的每個(gè)元素迭代出來(lái)。

②冒號(hào)“:”代表下一行是循環(huán)的第一行,但是循環(huán)體在書(shū)寫時(shí)需要縮進(jìn)。

③在for循環(huán)中,從for語(yǔ)句末尾的冒號(hào)開(kāi)始至其下面沒(méi)有縮進(jìn)的代碼之前都是其包含的需要重復(fù)執(zhí)行的部分。因此for循環(huán)是以縮進(jìn)為標(biāo)志的。

小試牛刀方法三:使用range()函數(shù)s=0foriinrange(1,11):

sum=sum+iprint(sum)方法四:使用range()函數(shù),數(shù)值列表降序且定義步長(zhǎng)s=0foriinrange(10,0,-1):

sum=sum+iprint(sum)range()函數(shù)

range()函數(shù)是讓Python從指定的第一個(gè)值開(kāi)始數(shù),并在到達(dá)所指的第二個(gè)值后停止,因此不包含第二個(gè)值。如range(1,6)其實(shí)是生成一個(gè)1-6的整數(shù)(不包含6)使用range()函數(shù)時(shí),還可指定步長(zhǎng)。

forvalueinrange(30,50,3):

print(value)

當(dāng)然,使用range()函數(shù)時(shí),數(shù)值列表也可以是降序的。如range(10,1,-2)

forvalueinrange(10,1,-2):

print(value)練習(xí):有以下程序段:sum=1foriinrange(1,5)sum=sum*iprint(sum,i)程序的運(yùn)行結(jié)果為()A.245B.1205C.244D.1204指出下面程序中的錯(cuò)誤并解釋:

(1)求1+2+3+4+5的和。s=1foriin[1,2,3,4,5]s=s+iprints(2)求5*4*3*2*1的值。s=0foriinrange(1,5):s=s*iprint(s)

(3)求7*5*3*1的值s=1foriinrange(7,0,-2)s=s*iprint("s=",s)暑假里假日小隊(duì)的同學(xué)幫助計(jì)算居民樓內(nèi)每戶的電費(fèi),樓內(nèi)共有10戶居民,每度電0.7元,編一個(gè)程序,輸入每一戶的用電量,然后計(jì)算應(yīng)繳納的電費(fèi)輸出,再輸入下一戶的用電量,計(jì)算應(yīng)繳納的電費(fèi)……一直重復(fù)下去直到全部用戶計(jì)算完畢。問(wèn)題:編程計(jì)算出以下每戶居民的電費(fèi)?學(xué)以致用1戶3986度2戶5477度3戶6561度4戶8796度5戶3668度6戶4712度7戶8631度8戶9164度9戶8157度10戶1661度f(wàn)oriinrange(1,11):A=eval(input())S=0.7*Aprint('電費(fèi)S=',S)

百錢買百雞:今有錢100元,要買100只雞,公雞5元一只,母雞1元一只,小雞1元3只,若公雞、母雞和小雞都至少要買1只,請(qǐng)編程求出恰好用完100元錢的所有的買雞方案。if語(yǔ)句中的條件判斷執(zhí)行了多少次,19*94*33次,我們發(fā)現(xiàn)循環(huán)嵌套層數(shù)越多,程序運(yùn)行次數(shù)越多,效率越低,那我們能對(duì)上面的程序進(jìn)行改進(jìn)提高效率嗎?折紙測(cè)珠峰珠穆朗瑪峰的海拔約為8848.86米,是世界第一高峰。如果有一張足夠大的紙(厚0.1mm),至少對(duì)折多少次,紙張的厚度可以超過(guò)珠峰的高度?請(qǐng)用python編程計(jì)算并輸出。break語(yǔ)句在while循環(huán)和for循環(huán)中都可以使用,一般放在if選擇結(jié)構(gòu)中,一旦break語(yǔ)句被執(zhí)行,將使得整個(gè)循環(huán)提前結(jié)束。continue語(yǔ)句的作用是終止當(dāng)前循環(huán),并忽略continue之后的語(yǔ)句,然后回到循環(huán)的頂端,提前進(jìn)入下一次循環(huán)。while語(yǔ)句格式while判斷條件:循環(huán)體注意冒號(hào)與縮進(jìn)。當(dāng)判斷條件的結(jié)果為True時(shí),執(zhí)行循環(huán)體語(yǔ)句,要注意循環(huán)的退出條件避免出現(xiàn)死循環(huán),另while沒(méi)有循環(huán)變量所以要計(jì)算循環(huán)次數(shù)時(shí)需要設(shè)置計(jì)數(shù)變量。用while語(yǔ)句實(shí)現(xiàn)折紙測(cè)珠峰問(wèn)題。

引導(dǎo)問(wèn)題:如何實(shí)現(xiàn)計(jì)數(shù)并輸出?判斷條件怎樣表示?循環(huán)問(wèn)題用for循環(huán)和while循環(huán)都

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論