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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

運用循環(huán)結構

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

3、循環(huán)結構while循環(huán)

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

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

for

循環(huán)變量in

列表:

語句或語句組自主探究:課本86頁表4----9縮進循環(huán)示例(有縮進與無縮進),感受for循環(huán)內外縮進體的不同問題:編程求1-10的和?(參考課本86:列表的幾種表達方式)方法一:列表直接羅列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)依次把列表中的每個元素迭代出來。

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

③在for循環(huán)中,從for語句末尾的冒號開始至其下面沒有縮進的代碼之前都是其包含的需要重復執(zhí)行的部分。因此for循環(huán)是以縮進為標志的。

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

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

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

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

forvalueinrange(30,50,3):

print(value)

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

forvalueinrange(10,1,-2):

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

(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)暑假里假日小隊的同學幫助計算居民樓內每戶的電費,樓內共有10戶居民,每度電0.7元,編一個程序,輸入每一戶的用電量,然后計算應繳納的電費輸出,再輸入下一戶的用電量,計算應繳納的電費……一直重復下去直到全部用戶計算完畢。問題:編程計算出以下每戶居民的電費?學以致用1戶3986度2戶5477度3戶6561度4戶8796度5戶3668度6戶4712度7戶8631度8戶9164度9戶8157度10戶1661度foriinrange(1,11):A=eval(input())S=0.7*Aprint('電費S=',S)

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

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

溫馨提示

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

最新文檔

評論

0/150

提交評論