高中信息技術(shù) 必修1 運用循環(huán)結(jié)構(gòu)描述問題求解的過程 課件_第1頁
高中信息技術(shù) 必修1 運用循環(huán)結(jié)構(gòu)描述問題求解的過程 課件_第2頁
高中信息技術(shù) 必修1 運用循環(huán)結(jié)構(gòu)描述問題求解的過程 課件_第3頁
高中信息技術(shù) 必修1 運用循環(huán)結(jié)構(gòu)描述問題求解的過程 課件_第4頁
高中信息技術(shù) 必修1 運用循環(huán)結(jié)構(gòu)描述問題求解的過程 課件_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、4.4 運用循環(huán)結(jié)構(gòu)描述 問題求解的過程必修一 數(shù)據(jù)與計算韓雅男深圳市沙井中學(xué)為什么要使用循環(huán)結(jié)構(gòu) 請用編程打印出1-10以內(nèi)的所有偶數(shù)?思 考1-100以內(nèi)的所有偶數(shù)?請打開“方法1.py”和“方法2.py”文件,運行查看效果。方法1:方法2:循環(huán)結(jié)構(gòu)可大大減少語句重復(fù),高效簡潔。甚至打印更多的數(shù)1-1000以內(nèi)的所有偶數(shù)?什么是循環(huán)一年又一年的更替一周又一周的輪轉(zhuǎn)一針又一針的跳動跑步計數(shù)重復(fù)地做一件事情什么是循環(huán)結(jié)構(gòu) 一般情況下,需要多次重復(fù)執(zhí)行的代碼,都可以用循環(huán)的方式來完成;循環(huán)結(jié)構(gòu)可以簡化編程結(jié)構(gòu),提高代碼編寫的效率。 在循環(huán)結(jié)構(gòu)中,一些語句在某個條件成立時重復(fù)執(zhí)行,直到條件不成立時

2、,才結(jié)束重復(fù)執(zhí)行。這個條件稱為循環(huán)控制條件,被重復(fù)執(zhí)行的語句塊稱為循環(huán)體。開始初始化部分循環(huán)控制條件循環(huán)體循環(huán)體以外的語句結(jié)束falsetrue1for循環(huán)的應(yīng)用2while循環(huán)的應(yīng)用3循環(huán)嵌套的應(yīng)用4循環(huán)控制的應(yīng)用目錄CONTENTS1PART ONEfor循環(huán)的應(yīng)用一般格式注意事項序列生成方式問題求解for循環(huán)的一般格式for 循環(huán)變量 in 序列: 語句或語句組循環(huán)變量循環(huán)語句序列for i in range(2, 101, 2) : print( i )方法1:for循環(huán)的注意事項for 循環(huán)變量 in 序列: 語句或語句組通過遍歷序列中的元素實現(xiàn)循環(huán),序列中的元素會被依次賦值給變量,

3、然后執(zhí)行一次循環(huán)體,當(dāng)序列中的元素全部遍歷完時,程序會自動退出循環(huán)。冒號“ : ”代表下一行是循環(huán)的第一行,循環(huán)體在書寫時必須縮進(jìn)。for循環(huán)所包含的循環(huán)語句以縮進(jìn)為標(biāo)志??s進(jìn)是否縮進(jìn)循環(huán)體示例代碼示例結(jié)果有縮進(jìn)for value in 1,2,3,4: print(value) print(good)無縮進(jìn)for value in 1,2,3,4: print(value)print(good)1good2good3good4good1234goodfor循環(huán)的注意事項for 循環(huán)變量 in 序列: 語句或語句組通過遍歷序列中的元素實現(xiàn)循環(huán),序列中的元素會被依次賦值給變量,然后執(zhí)行一次循環(huán)體

4、,當(dāng)序列中的元素全部遍歷完時,程序會自動退出循環(huán)。冒號“ : ”代表下一行是循環(huán)的第一行,循環(huán)體在書寫時必須縮進(jìn)。for循環(huán)所包含的循環(huán)語句以縮進(jìn)為標(biāo)志??s進(jìn)序列是指有順序地組織在一起的數(shù)據(jù)元素集合。在python中,序列有多種生成方式,如列表、range( )函數(shù)、字典、元組等。for循環(huán)中序列的生成方式列 表列表是寫在方括號“ ”之間、用逗號隔開的元素列表。如list1=good, run,2022,我們和a2= 1,2,3,4,5,6,7列表中的數(shù)據(jù)項不需要具有相同的類型。與字符串的索引一樣,列表索引從0開始。(1)直接羅列for value in 1,2,3,4: print(valu

5、e)(2)先定義、后使用 values=1,2,3,4for value in values: print(value)運行結(jié)果1234for循環(huán)中序列的生成方式range( )函數(shù)功能:返回一個等差整數(shù)序列格式:range(起始值,終值,步長)注意:生成的整數(shù)序列不包括終值,即表示的區(qū)間為 起始數(shù),結(jié)束數(shù) ),并且起始值和步長可以缺省,缺省時分別為0和1步長可以缺省起始值和步長缺省,缺省時分別為0和1改變起始值、終值、步長來實現(xiàn)相應(yīng)功能 for n in range(1,10,1): n=1,2,3,4,5,6,7,8,9(9個數(shù))1 for n in range(1,10): n=1,2,

6、3,4,5,6,7,8,9(9個數(shù))2 for n in range(10): n=0,1,2,3,4,5,6,7,8,9 (10個數(shù))3 for n in range(0,10,2): n=0,2,4,6,8(5個數(shù))4 for n in range(10,0,-2): n=10,8,6,4,2(5個數(shù))5示例代碼:s=0 #定義一個變量,用于計算累加和for n in range(1,101): #設(shè)置變量遍歷區(qū)間為1,101),公差為1,即1,2,3,99,100 s=s+n #有縮進(jìn)print(s) #無縮進(jìn)問題求解舉例計算1+2+3+99+100(1100的累加和)循環(huán)次數(shù)n在1,1

7、01)ss=s+n1100+1220+10+1+2330+1+20+1+2+3440+1+2+30+1+2+3+4550+1+2+3+40+1+2+3+4+5660+1+2+3+4+50+1+2+3+4+5+69880+1+2+3+4+5+6+970+1+2+3+4+5+6+989990+1+2+3+4+5+6+980+1+2+3+4+5+6+99100100+1+2+3+4+5+6+990+1+2+3+4+5+6+100退出輸出s=0+1+100=5050問題求解體驗探究體驗探究1請運用for循環(huán)語句求解10以內(nèi)的所有奇數(shù)累乘的結(jié)果。請打開資源包中“探究1.py”文件,補(bǔ)充代碼使其輸出正確結(jié)

8、果。示例代碼:s = 1for i in range_: _print(s)s=s*i 或 s*=i(1,10,2)問題求解能力提升補(bǔ)充以下代碼使其輸出正確結(jié)果:for n in range(_): if _: print(n) 請思考如何利用for循環(huán)語句輸出100以內(nèi)7的倍數(shù)。可打開資源包中“拓展1.py”文件,補(bǔ)充代碼使其輸出正確結(jié)果。參考代碼見“拓展1(答案).py”文件。2PART TWOwhile循環(huán)的應(yīng)用一般格式注意事項問題求解while循環(huán)的一般格式while (表達(dá)式) : 語句或語句組while循環(huán)/條件循環(huán),即當(dāng)型循環(huán),while翻譯為“當(dāng)時”,只要條件滿足,就不斷循環(huán);

9、否則,跳出循環(huán)。上條語句表達(dá)式?循環(huán)語句下條語句NY循環(huán)語句表達(dá)式i=2while i101 : print(i) i = i+2方法2:while循環(huán)的注意事項while (表達(dá)式) : 語句1 語句2 語句3每次循環(huán)都是執(zhí)行完循環(huán)體語句后回到表達(dá)式處重新開始判斷,重新計算表達(dá)式的值。一旦為假就跳出循環(huán),為真時繼續(xù)執(zhí)行循環(huán)體語句循環(huán)體中必須有改變條件表達(dá)式值的語句,否則將變成死循環(huán)縮進(jìn):一般是一個關(guān)系表達(dá)式或一個邏輯表達(dá)式,值為True或False問題求解舉例編寫程序猜測價格,實現(xiàn)“猜對了”就跳出循環(huán)。問題分析讓用戶反復(fù)猜測價格猜對價格要結(jié)束循環(huán)需要用到循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)是基于條件的用for語

10、句還是while語句呢?while語句示例代碼:price=5600guess=int(input(請輸入你猜測的價格:)while guess!=price: print(猜錯了,加油哦!) guess=int(input(請輸入你猜測的價格:)print(猜對了,你真棒!)問題求解舉例編寫程序猜測價格,實現(xiàn)“猜對了”就跳出循環(huán)。如果猜不對,就會無限循環(huán),成為死循環(huán)。該如何解決呢?請打開資源包中“探究2.py”文件,補(bǔ)充代碼使其輸出正確結(jié)果。示例代碼:price=5600guess=int(input(請輸入你猜測的價格:)times=1 #控制猜測次數(shù)while _: _ print(猜錯

11、了,加油哦!) guess=int(input(請輸入你猜測的價格:)print(猜對了,你真棒!)問題求解體驗探究體驗探究2請運用while循環(huán)語句實現(xiàn)控制次數(shù)的猜價游戲。(3次猜測機(jī)會)times=times+1 或 times+=1guess!=price and times3問題求解體驗探究“控制次數(shù)猜價格”示例代碼:price=5600guess=int(input(請輸入你猜測的價格:)times=1while guess != price and times 3: times = times+1 print(猜錯了,加油哦!) guess=int(input(請輸入你猜測的價格:

12、)print(猜對了,你真棒!)“控制次數(shù)猜價格”示例代碼(改進(jìn)):price = 5600guess = int(input(請輸入你猜測的價格:)times = 1while guess != price and times 3: times = times+1 print(猜錯了,加油哦!) guess = int(input(請輸入你猜測的價格:)if guess=price: print(猜對了,你真棒!)else: print(很遺憾,猜錯了,游戲結(jié)束!)問題求解能力提升補(bǔ)充以下代碼使其輸出正確結(jié)果:price = 5600guess = int(input(請輸入你猜測的價格:)times = 1while guess != price and times 1: if i % 13 = 0: break i=i-1print(i)示例程序代碼2:for i in range(100,

溫馨提示

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

評論

0/150

提交評論