《高二數(shù)學(xué) 程序框圖與算法的基本邏輯結(jié)構(gòu)課件》由會(huì)員分享,可在線(xiàn)閱讀,更多相關(guān)《高二數(shù)學(xué) 程序框圖與算法的基本邏輯結(jié)構(gòu)課件(65頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、1.1.3 程序框圖與算法的基本邏輯結(jié)構(gòu) 第二課時(shí) 算法的循環(huán)結(jié)構(gòu)知識(shí)探究(四):算法的循環(huán)結(jié)構(gòu)知識(shí)探究(四):算法的循環(huán)結(jié)構(gòu)思考1:在算法的程序框圖中,由按照一定的條件反復(fù)執(zhí)行的某些步驟組成的邏輯結(jié)構(gòu),稱(chēng)為循環(huán)結(jié)構(gòu),反復(fù)執(zhí)行的步驟稱(chēng)為循環(huán)體,那么循環(huán)結(jié)構(gòu)中一定包含條件結(jié)構(gòu)嗎?思考2:某些循環(huán)結(jié)構(gòu)用程序框圖可以表示為:循環(huán)體循環(huán)體滿(mǎn)足條件?滿(mǎn)足條件?是是否否循環(huán)體循環(huán)體滿(mǎn)足條件?滿(mǎn)足條件?是是否否思考2:某些循環(huán)結(jié)構(gòu)用程序框圖可以表示為:循環(huán)體循環(huán)體滿(mǎn)足條件?滿(mǎn)足條件?是是否否循環(huán)體循環(huán)體滿(mǎn)足條件?滿(mǎn)足條件?是是否否這種循環(huán)結(jié)構(gòu)稱(chēng)為直到型循環(huán)結(jié)構(gòu),你能指出直到型循環(huán)結(jié)構(gòu)的特征嗎?思考2:某些循
2、環(huán)結(jié)構(gòu)用程序框圖可以表示為:循環(huán)體循環(huán)體滿(mǎn)足條件?滿(mǎn)足條件?是是否否循環(huán)體循環(huán)體滿(mǎn)足條件?滿(mǎn)足條件?是是否否這種循環(huán)結(jié)構(gòu)稱(chēng)為直到型循環(huán)結(jié)構(gòu),你能指出直到型循環(huán)結(jié)構(gòu)的特征嗎?在執(zhí)行了一次循環(huán)體后,對(duì)條件進(jìn)行判斷,如果條件不滿(mǎn)足,就繼續(xù)執(zhí)行循環(huán)體,直到條件滿(mǎn)足時(shí)終止循環(huán).思考3:還有一些循環(huán)結(jié)構(gòu)用程序框圖可以表示為:循環(huán)體循環(huán)體滿(mǎn)足條件?滿(mǎn)足條件?是是否否循環(huán)體循環(huán)體滿(mǎn)足條件?滿(mǎn)足條件?是是否否思考3:還有一些循環(huán)結(jié)構(gòu)用程序框圖可以表示為:循環(huán)體循環(huán)體滿(mǎn)足條件?滿(mǎn)足條件?是是否否循環(huán)體循環(huán)體滿(mǎn)足條件?滿(mǎn)足條件?是是否否這種循環(huán)結(jié)構(gòu)稱(chēng)為當(dāng)型循環(huán)結(jié)構(gòu),你能指出當(dāng)型循環(huán)結(jié)構(gòu)的特征嗎?思考3:還有一些循環(huán)
3、結(jié)構(gòu)用程序框圖可以表示為:循環(huán)體循環(huán)體滿(mǎn)足條件?滿(mǎn)足條件?是是否否循環(huán)體循環(huán)體滿(mǎn)足條件?滿(mǎn)足條件?是是否否在每次執(zhí)行循環(huán)體前,對(duì)條件進(jìn)行判斷,如果條件滿(mǎn)足,就執(zhí)行循環(huán)體,否則終止循環(huán).這種循環(huán)結(jié)構(gòu)稱(chēng)為當(dāng)型循環(huán)結(jié)構(gòu),你能指出當(dāng)型循環(huán)結(jié)構(gòu)的特征嗎?第1步,0+1=1.第2步,1+2=3.第3步,3+3=6.第4步,6+4=10.第100步,4950+100=5050. 思考4:計(jì)算1+2+3+100的值可按如下過(guò)程進(jìn)行:第1步,0+1=1.第2步,1+2=3.第3步,3+3=6.第4步,6+4=10.第100步,4950+100=5050. 思考4:計(jì)算1+2+3+100的值可按如下過(guò)程進(jìn)行:我們
4、用一個(gè)累加變量我們用一個(gè)累加變量S表示每一步的計(jì)算結(jié)果,表示每一步的計(jì)算結(jié)果,即把即把S+i的結(jié)果仍記為的結(jié)果仍記為S,從而把第,從而把第i步表示為步表示為S=S+i,其中其中S的初始值為的初始值為0,i依次取依次取1,2,100,通過(guò)重復(fù)操,通過(guò)重復(fù)操作,上述問(wèn)題的算法如何設(shè)計(jì)?作,上述問(wèn)題的算法如何設(shè)計(jì)?第一步,令第一步,令i=1,S=0.第一步,令第一步,令i=1,S=0.第二步,計(jì)算第二步,計(jì)算S+i,仍用,仍用S表示表示.第一步,令第一步,令i=1,S=0.第二步,計(jì)算第二步,計(jì)算S+i,仍用,仍用S表示表示.第三步,計(jì)算第三步,計(jì)算i+1,仍用,仍用i表示表示.第一步,令第一步,令
5、i=1,S=0.第二步,計(jì)算第二步,計(jì)算S+i,仍用,仍用S表示表示.第三步,計(jì)算第三步,計(jì)算i+1,仍用,仍用i表示表示.第四步,判斷第四步,判斷i100是否成立是否成立.若是,則輸若是,則輸出出S,結(jié)束算法;否則,返回第二步結(jié)束算法;否則,返回第二步.思考5:用直到型循環(huán)結(jié)構(gòu),上述算法的程序框圖如何表示?思考5:用直到型循環(huán)結(jié)構(gòu),上述算法的程序框圖如何表示? 開(kāi)始開(kāi)始思考5:用直到型循環(huán)結(jié)構(gòu),上述算法的程序框圖如何表示? 開(kāi)始開(kāi)始i=1思考5:用直到型循環(huán)結(jié)構(gòu),上述算法的程序框圖如何表示? 開(kāi)始開(kāi)始i=1S=0思考5:用直到型循環(huán)結(jié)構(gòu),上述算法的程序框圖如何表示? 開(kāi)始開(kāi)始i=1S=0S=
6、S+i思考5:用直到型循環(huán)結(jié)構(gòu),上述算法的程序框圖如何表示? 開(kāi)始開(kāi)始i=1S=0 i=i+1S=S+i思考5:用直到型循環(huán)結(jié)構(gòu),上述算法的程序框圖如何表示? 開(kāi)始開(kāi)始i=1i100?S=0 i=i+1S=S+i思考5:用直到型循環(huán)結(jié)構(gòu),上述算法的程序框圖如何表示? 開(kāi)始開(kāi)始i=1i100?是是輸出輸出SS=0 i=i+1S=S+i思考5:用直到型循環(huán)結(jié)構(gòu),上述算法的程序框圖如何表示? 開(kāi)始開(kāi)始i=1i100?是是輸出輸出S結(jié)束結(jié)束S=0 i=i+1S=S+i思考5:用直到型循環(huán)結(jié)構(gòu),上述算法的程序框圖如何表示? 開(kāi)始開(kāi)始i=1i100?是是輸出輸出S結(jié)束結(jié)束S=0 i=i+1S=S+i否否思
7、考6:用當(dāng)型循環(huán)結(jié)構(gòu),上述算法的程序框圖如何表示?開(kāi)始開(kāi)始思考6:用當(dāng)型循環(huán)結(jié)構(gòu),上述算法的程序框圖如何表示?開(kāi)始開(kāi)始i=1思考6:用當(dāng)型循環(huán)結(jié)構(gòu),上述算法的程序框圖如何表示?開(kāi)始開(kāi)始i=1S=0思考6:用當(dāng)型循環(huán)結(jié)構(gòu),上述算法的程序框圖如何表示?開(kāi)始開(kāi)始i=1S=0i100?思考6:用當(dāng)型循環(huán)結(jié)構(gòu),上述算法的程序框圖如何表示?開(kāi)始開(kāi)始i=1輸出輸出S否否S=0i100?思考6:用當(dāng)型循環(huán)結(jié)構(gòu),上述算法的程序框圖如何表示?開(kāi)始開(kāi)始i=1結(jié)束結(jié)束輸出輸出S否否S=0i100?思考6:用當(dāng)型循環(huán)結(jié)構(gòu),上述算法的程序框圖如何表示?開(kāi)始開(kāi)始i=1結(jié)束結(jié)束輸出輸出S否否是是S=0S=S+ii100?思考
8、6:用當(dāng)型循環(huán)結(jié)構(gòu),上述算法的程序框圖如何表示?開(kāi)始開(kāi)始i=1結(jié)束結(jié)束輸出輸出S否否是是S=0S=S+ii100?i=i+1思考6:用當(dāng)型循環(huán)結(jié)構(gòu),上述算法的程序框圖如何表示?例4:某工廠(chǎng)2005年的年生產(chǎn)總值為200萬(wàn)元,技術(shù)革新后預(yù)計(jì)以后每年的年生產(chǎn)總值都比上一年增長(zhǎng)5%. 設(shè)計(jì)一個(gè)程序框圖,輸出預(yù)計(jì)年生產(chǎn)總值超過(guò)300萬(wàn)元的最早年份算法分析算法分析:例4:某工廠(chǎng)2005年的年生產(chǎn)總值為200萬(wàn)元,技術(shù)革新后預(yù)計(jì)以后每年的年生產(chǎn)總值都比上一年增長(zhǎng)5%. 設(shè)計(jì)一個(gè)程序框圖,輸出預(yù)計(jì)年生產(chǎn)總值超過(guò)300萬(wàn)元的最早年份第一步,第一步, 輸入輸入2005年的年生產(chǎn)總值年的年生產(chǎn)總值.算法分析算法分
9、析:例4:某工廠(chǎng)2005年的年生產(chǎn)總值為200萬(wàn)元,技術(shù)革新后預(yù)計(jì)以后每年的年生產(chǎn)總值都比上一年增長(zhǎng)5%. 設(shè)計(jì)一個(gè)程序框圖,輸出預(yù)計(jì)年生產(chǎn)總值超過(guò)300萬(wàn)元的最早年份第一步,第一步, 輸入輸入2005年的年生產(chǎn)總值年的年生產(chǎn)總值.第二步,計(jì)算下一年的年生產(chǎn)總值第二步,計(jì)算下一年的年生產(chǎn)總值.算法分析算法分析:例4:某工廠(chǎng)2005年的年生產(chǎn)總值為200萬(wàn)元,技術(shù)革新后預(yù)計(jì)以后每年的年生產(chǎn)總值都比上一年增長(zhǎng)5%. 設(shè)計(jì)一個(gè)程序框圖,輸出預(yù)計(jì)年生產(chǎn)總值超過(guò)300萬(wàn)元的最早年份第一步,第一步, 輸入輸入2005年的年生產(chǎn)總值年的年生產(chǎn)總值.第二步,計(jì)算下一年的年生產(chǎn)總值第二步,計(jì)算下一年的年生產(chǎn)總值
10、.算法分析算法分析:例4:某工廠(chǎng)2005年的年生產(chǎn)總值為200萬(wàn)元,技術(shù)革新后預(yù)計(jì)以后每年的年生產(chǎn)總值都比上一年增長(zhǎng)5%. 設(shè)計(jì)一個(gè)程序框圖,輸出預(yù)計(jì)年生產(chǎn)總值超過(guò)300萬(wàn)元的最早年份第三步,判斷所得的結(jié)果是否大于第三步,判斷所得的結(jié)果是否大于300. 若是,則若是,則輸出該年的年份;否則,返回第二步輸出該年的年份;否則,返回第二步.循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu):循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu):(1)循環(huán)體:設(shè))循環(huán)體:設(shè)a為某年的年生產(chǎn)總值,為某年的年生產(chǎn)總值,t為年生產(chǎn)總值的年增長(zhǎng)量,為年生產(chǎn)總值的年增長(zhǎng)量,n為年份,則為年份,則t=0.05a,a=a+t,n=n+1.(2)初始值:)初始值:n=2005,a=20
11、0.循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu):(1)循環(huán)體:設(shè))循環(huán)體:設(shè)a為某年的年生產(chǎn)總值,為某年的年生產(chǎn)總值,t為年生產(chǎn)總值的年增長(zhǎng)量,為年生產(chǎn)總值的年增長(zhǎng)量,n為年份,則為年份,則t=0.05a,a=a+t,n=n+1.(3)控制條件:當(dāng))控制條件:當(dāng)“a300”時(shí)終止循環(huán)時(shí)終止循環(huán).(2)初始值:)初始值:n=2005,a=200.循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu):(1)循環(huán)體:設(shè))循環(huán)體:設(shè)a為某年的年生產(chǎn)總值,為某年的年生產(chǎn)總值,t為年生產(chǎn)總值的年增長(zhǎng)量,為年生產(chǎn)總值的年增長(zhǎng)量,n為年份,則為年份,則t=0.05a,a=a+t,n=n+1.程序框圖程序框圖:開(kāi)始開(kāi)始程序框圖程序框圖:開(kāi)始開(kāi)始n=2005程序框圖程序框圖
12、:開(kāi)始開(kāi)始n=2005a=200程序框圖程序框圖:開(kāi)始開(kāi)始n=2005a=200t=0.05a程序框圖程序框圖:開(kāi)始開(kāi)始n=2005a=200t=0.05aa=a+t程序框圖程序框圖:開(kāi)始開(kāi)始n=2005a=200t=0.05aa=a+tn=n+1程序框圖程序框圖:開(kāi)始開(kāi)始n=2005a=200t=0.05aa=a+tn=n+1a300?程序框圖程序框圖:開(kāi)始開(kāi)始n=2005a=200t=0.05aa=a+tn=n+1a300?輸出輸出n是是程序框圖程序框圖:開(kāi)始開(kāi)始n=2005a=200t=0.05aa=a+tn=n+1a300?結(jié)束結(jié)束輸出輸出n是是程序框圖程序框圖:開(kāi)始開(kāi)始n=2005a
13、=200t=0.05aa=a+tn=n+1a300?結(jié)束結(jié)束輸出輸出n是是否否程序框圖程序框圖:順序結(jié)構(gòu)的程序框圖的基本特征:順序結(jié)構(gòu)的程序框圖的基本特征:小 結(jié)順序結(jié)構(gòu)的程序框圖的基本特征:順序結(jié)構(gòu)的程序框圖的基本特征:小 結(jié)(1)必須有兩個(gè)起止框,穿插輸入、輸出框和)必須有兩個(gè)起止框,穿插輸入、輸出框和處理框,沒(méi)有判斷框處理框,沒(méi)有判斷框.順序結(jié)構(gòu)的程序框圖的基本特征:順序結(jié)構(gòu)的程序框圖的基本特征:小 結(jié)(2)各程序框從上到下用流程線(xiàn)依次連接)各程序框從上到下用流程線(xiàn)依次連接.(1)必須有兩個(gè)起止框,穿插輸入、輸出框和)必須有兩個(gè)起止框,穿插輸入、輸出框和處理框,沒(méi)有判斷框處理框,沒(méi)有判斷
14、框.條件結(jié)構(gòu)的程序框圖的基本特征:小 結(jié)條件結(jié)構(gòu)的程序框圖的基本特征:小 結(jié)(1)程序框圖中必須有兩個(gè)起止框,穿插輸入、輸出框和處理框,一定有判斷框.(2)條件結(jié)構(gòu)的程序框圖各有兩種形式.條件結(jié)構(gòu)的程序框圖的基本特征:小 結(jié)(1)程序框圖中必須有兩個(gè)起止框,穿插輸入、輸出框和處理框,一定有判斷框.循環(huán)結(jié)構(gòu)的程序框圖的基本特征:循環(huán)結(jié)構(gòu)的程序框圖的基本特征:小 結(jié)循環(huán)結(jié)構(gòu)的程序框圖的基本特征:循環(huán)結(jié)構(gòu)的程序框圖的基本特征:小 結(jié)(1)循環(huán)結(jié)構(gòu)中包含條件結(jié)構(gòu),條件結(jié)構(gòu))循環(huán)結(jié)構(gòu)中包含條件結(jié)構(gòu),條件結(jié)構(gòu)中不含循環(huán)結(jié)構(gòu)中不含循環(huán)結(jié)構(gòu).(2)循環(huán)結(jié)構(gòu)的程序框圖各有兩種形式)循環(huán)結(jié)構(gòu)的程序框圖各有兩種形式.循環(huán)結(jié)構(gòu)的程序框圖的基本特征:循環(huán)結(jié)構(gòu)的程序框圖的基本特征:小 結(jié)(1)循環(huán)結(jié)構(gòu)中包含條件結(jié)構(gòu),條件結(jié)構(gòu))循環(huán)結(jié)構(gòu)中包含條件結(jié)構(gòu),條件結(jié)構(gòu)中不含循環(huán)結(jié)構(gòu)中不含循環(huán)結(jié)構(gòu).作業(yè)作業(yè): :習(xí)案習(xí)案