版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第一章算法初步
本章教材分析
算法是數(shù)學(xué)及其應(yīng)用的重要組成部分,是計(jì)算科學(xué)的重要基礎(chǔ).算法的應(yīng)用是學(xué)習(xí)數(shù)學(xué)
的一個(gè)重要方面.學(xué)生學(xué)習(xí)算法的應(yīng)用,目的就是利用已有的數(shù)學(xué)知識(shí)分析問(wèn)題和解決問(wèn)題.
通過(guò)算法的學(xué)習(xí),對(duì)完善數(shù)學(xué)的思想,激發(fā)應(yīng)用數(shù)學(xué)的意識(shí),培養(yǎng)分析問(wèn)題、解決問(wèn)題的能力,
增強(qiáng)進(jìn)行實(shí)踐的能力等,都有很大的幫助.
本章主要內(nèi)容:算法與程序框圖、基本算法語(yǔ)句、算法案例和小結(jié).教材從學(xué)生最熟悉
的算法入手,通過(guò)研究程序框圖與算法案例,使算法得到充分的應(yīng)用,同時(shí)也展現(xiàn)了古老算
法和現(xiàn)代計(jì)算機(jī)技術(shù)的密切關(guān)系.算法案例不僅展示了數(shù)學(xué)方法的嚴(yán)謹(jǐn)性、科學(xué)性,也為計(jì)
算機(jī)的應(yīng)用提供了廣闊的空間.讓學(xué)生進(jìn)一步受到數(shù)學(xué)思想方法的熏陶,激發(fā)學(xué)生的學(xué)習(xí)熱
情.
在算法初步這一章中讓學(xué)生近距離接近社會(huì)生活,從生活中學(xué)習(xí)數(shù)學(xué),使數(shù)學(xué)在社會(huì)生
活中得到應(yīng)用和提高,讓學(xué)生體會(huì)到數(shù)學(xué)是有用的,從而培養(yǎng)學(xué)生的學(xué)習(xí)興趣.“數(shù)學(xué)建?!?/p>
也是高考考查重點(diǎn).
本章還是數(shù)學(xué)思想方法的載體,學(xué)生在學(xué)習(xí)中會(huì)經(jīng)常用到“算法思想'’"轉(zhuǎn)化思想”,從而
提高自己數(shù)學(xué)能力.因此應(yīng)從三個(gè)方面把握本章:
(1)知識(shí)間的聯(lián)系;
(2)數(shù)學(xué)思想方法;
(3)認(rèn)知規(guī)律.
本章教學(xué)時(shí)間約需12課時(shí),具體分配如下(僅供參考):
1.1.1算法的概念約1課時(shí)
1.1.2程序框圖與算法的基木邏輯結(jié)構(gòu)約4課時(shí)
1.2.1輸入語(yǔ)句、輸出語(yǔ)句和賦值語(yǔ)句約1課時(shí)
1.2.2條件語(yǔ)句約1課時(shí)
1.2.3循環(huán)語(yǔ)句約1課時(shí)
1.3算法案例約3課時(shí)
本章復(fù)習(xí)約1課時(shí)
1.1算法與程序框圖
1.1.1算法的概念
整體設(shè)計(jì)
教學(xué)分析
算法在中學(xué)數(shù)學(xué)課程中是一個(gè)新的概念,但沒(méi)有一個(gè)精確化的定義,教科書(shū)只對(duì)它作了
如下描述:“在數(shù)學(xué)中,算法通常是指按照一定規(guī)則解決某一類問(wèn)題的明確有限的步驟為
了讓學(xué)生更好理解這一概念,教科書(shū)先從分析一個(gè)具體的二元一次方程組的求解過(guò)程出發(fā),
歸納出了二元一次方程組的求解步驟,這些步驟就構(gòu)成了解二元一次方程組的算法.教學(xué)中,
應(yīng)從學(xué)生非常熟悉的例子引出算法,再通過(guò)例題加以鞏固.
三維目標(biāo)
1.正確理解算法的概念,掌握算法的基本特點(diǎn).
2.通過(guò)例題教學(xué),使學(xué)生體會(huì)設(shè)計(jì)算法的基本思路.
3.通過(guò)有趣的實(shí)例使學(xué)生了解算法這一概念的同時(shí),激發(fā)學(xué)生學(xué)習(xí)數(shù)學(xué)的興趣.
重點(diǎn)難點(diǎn)
教學(xué)重點(diǎn):算法的含義及應(yīng)用.
教學(xué)難點(diǎn):寫(xiě)出解決一類問(wèn)題的算法.
課時(shí)安排
1課時(shí)
教學(xué)過(guò)程
導(dǎo)入新課
思路1(情境導(dǎo)入)
一個(gè)人帶著三只狼和三只羚羊過(guò)河,只有i條船,同船可容納?個(gè)人和兩只動(dòng)物,沒(méi)有
人在的時(shí)候,如果狼的數(shù)量不少于羚羊的數(shù)量狼就會(huì)吃羚羊.該人如何將動(dòng)物轉(zhuǎn)移過(guò)河?請(qǐng)
同學(xué)們寫(xiě)出解決問(wèn)題的步驟,解決這一問(wèn)題將要用到我們今天學(xué)習(xí)的內(nèi)容——算法.
思路2(情境導(dǎo)入)
大家都看過(guò)趙本山與宋丹丹演的小品吧,宋丹丹說(shuō)了一個(gè)笑話,把大象裝進(jìn)冰箱總共分
幾步?
答案:分三步,第一步:把冰箱門(mén)打開(kāi);第二步:把大象裝進(jìn)去;第三步:把冰箱門(mén)關(guān)上.
上述步驟構(gòu)成了把大象裝進(jìn)冰箱的算法,今天我們開(kāi)始學(xué)習(xí)算法的概念.
思路3(直接導(dǎo)入)
算法不僅是數(shù)學(xué)及其應(yīng)用的重要組成部分,也是計(jì)算機(jī)科學(xué)的重要基礎(chǔ).在現(xiàn)代社會(huì)里,
計(jì)算機(jī)已成為人們?nèi)粘I詈凸ぷ髦胁豢扇鄙俚墓ぞ?聽(tīng)音樂(lè)、看電影、玩游戲、打字、畫(huà)
卡通畫(huà)、處理數(shù)據(jù),計(jì)算機(jī)是怎樣工作的呢?要想弄清楚這個(gè)問(wèn)題,算法的學(xué)習(xí)是一個(gè)開(kāi)始.
推進(jìn)新課
新知探究
提出問(wèn)題
(1)解二元一次方程組有幾種方法?
(2)結(jié)合教材實(shí)例‘'式'總結(jié)用加減消元法解二元一次方程組的步驟.
2x+y=l,(2)
x-2v=-1⑴
(3)結(jié)合教材實(shí)例《,總結(jié)用代入消元法解二元一次方程組的步驟.
2x+y=l,(2)
(4)請(qǐng)寫(xiě)出解一般二元一次方程組的步驟.
(5)根據(jù)上述實(shí)例談?wù)勀銓?duì)算法的理解.
(6)請(qǐng)同學(xué)們總結(jié)算法的特征.
(7)請(qǐng)思考我們學(xué)習(xí)算法的意義.
討論結(jié)果:
(1)代入消元法和加減消元法.
(2)回顧二元一次方程組
\的求解過(guò)程,我們可以歸納出以下步驟:
[2x+y^l,(2)
第一步,①+②*2,得5x=l.③
第二步,解③,得x=(.
第三步,②-①x2,得5y=3.④
第四步,解④,得尸士.
1
第五步,得到方程組的解為“5,
(3)用代入消元法解二元一次方程組
fx-2y=-1,(1)
\我們可以歸納出以下步驟:
2x+y=1,(2)
第一步,由①得x=2y-l.③
第二步,把③代入②,得2(2y-l)+y=l.④
第三步,解④得y=33.⑤
31
第四步,把⑤代入③,得X=2X±-1=M
1
x—
第五步,得到方程組的解為4,
a.x+b,y=c.,(l)
(4)對(duì)于一般的二元一次方程組1117'V
a2x+b2y^C2,(2)
其中ab—azbi/O,可以寫(xiě)出類似的求解步驟:
第一步,①xb2-②xbi,得
—
(a|b2a2bj)x=b2C|-b|C2.(§)
第二步,解③,得x=-C「仇C、2
a}b2-a2b]
—
第三步,②xa「①xa?,得(a??—azb])y=a|C2a2Ci.(4)
第四步,解④,得尸年2-“2。
a}b2-a2bl
'b2cx-b,c2
A一,
ah-a^h.
第五步,得到方程組的解為《1221
CliCj—Q'G
y=------.
ayb2-a2bx
(5)算法的定義:廣義的算法是指完成某項(xiàng)工作的方法和步驟,那么我們可以說(shuō)洗衣機(jī)的使
用說(shuō)明書(shū)是操作洗衣機(jī)的算法,菜譜是做菜的算法等等.
在數(shù)學(xué)中,算法通常是指按照一定規(guī)則解決某一類問(wèn)題的明確有限的步驟.
現(xiàn)在,算法通常可以編成計(jì)算機(jī)程序,讓計(jì)算機(jī)執(zhí)行并解決問(wèn)題.
(6)算法的特征:①確定性:算法的每一步都應(yīng)當(dāng)做到準(zhǔn)確無(wú)誤、不重不漏.“不重”是指不是
可有可無(wú)的,甚至無(wú)用的步驟,“不漏”是指缺少哪一步都無(wú)法完成任務(wù).②邏輯性:算法從
開(kāi)始的“第一步''直到"最后一步”之間做到環(huán)環(huán)相扣,分工明確,"前一步’'是"后一步''的前提,
“后一步”是“前一步”的繼續(xù).③有窮性:算法要有明確的開(kāi)始和結(jié)束,當(dāng)?shù)竭_(dá)終止步驟時(shí)所要
解決的問(wèn)題必須有明確的結(jié)果,也就是說(shuō)必須在有限步內(nèi)完成任務(wù),不能無(wú)限制地持續(xù)進(jìn)行.
(7)在解決某些問(wèn)題時(shí),需要設(shè)計(jì)出一系列可操作或可計(jì)算的步驟來(lái)解決問(wèn)題,這些步驟稱
為解決這些問(wèn)題的算法.也就是說(shuō),算法實(shí)際上就是解決問(wèn)題的一種程序性方法.算法一般是
機(jī)械的,有忖需進(jìn)行大量重復(fù)的計(jì)算,它的優(yōu)點(diǎn)是一種通法,只要按部就班地去做,總能得
到結(jié)果.因此算法是計(jì)算科學(xué)的重要基礎(chǔ).
應(yīng)用示例
思路1
例1(1)設(shè)計(jì)一個(gè)算法,判斷7是否為質(zhì)數(shù).
(2)設(shè)計(jì)一個(gè)算法,判斷35是否為質(zhì)數(shù).
算法分析:(1)根據(jù)質(zhì)數(shù)的定義,可以這樣判斷:依次用2—6除7,如果它們中有一個(gè)能
整除7,則7不是質(zhì)數(shù),否則7是質(zhì)數(shù).
算法如下:(1)第一步,用2除7,得到余數(shù)1.因?yàn)橛鄶?shù)不為0,所以2不能整除7.
第二步,用3除7,得到余數(shù)1.因?yàn)橛鄶?shù)不為0,所以3不能整除7.
第三步,用4除7,得到余數(shù)3.因?yàn)橛鄶?shù)不為0,所以4不能整除7.
第四步,用5除7,得到余數(shù)2.因?yàn)橛鄶?shù)不為0,所以5不能整除7.
第五步,用6除7,得到余數(shù)1.因?yàn)橛鄶?shù)不為0,所以6不能整除7.因此,7是質(zhì)數(shù).
(2)類似地,可寫(xiě)出“判斷35是否為質(zhì)數(shù)”的算法:第一步,用2除35,得到余數(shù)1.因?yàn)?/p>
余數(shù)不為0,所以2不能整除35.
第二步,用3除35,得到余數(shù)2.因?yàn)橛鄶?shù)不為0,所以3不能整除35.
第三步,用4除35,得到余數(shù)3.因?yàn)橛鄶?shù)不為0,所以4不能整除35.
第四步,用5除35,得到余數(shù)0.因?yàn)橛鄶?shù)為0,所以5能整除35.因此,35不是質(zhì)數(shù).
點(diǎn)評(píng):上述算法有很大的局限性,用上述算法判斷35是否為質(zhì)數(shù)還可以,如果判斷1997
是否為質(zhì)數(shù)就麻煩了,因此,我們需要尋找普適性的算法步驟.
變式訓(xùn)練
請(qǐng)寫(xiě)出判斷n(n>2)是否為質(zhì)數(shù)的算法.
分析:對(duì)于任意的整數(shù)n(n>2),若用i表示2一(31)中的任意整數(shù),貝lj“判斷n是否為質(zhì)數(shù)”
的算法包含下面的重復(fù)操作:用i除n,得到余數(shù)r.判斷余數(shù)r是否為0,若是,則不是質(zhì)數(shù);
否則,將i的值增加1,再執(zhí)行同樣的操作.
這個(gè)操作一直要進(jìn)行到i的值等于(n-1)為止.
算法如下:第一步,給定大于2的整數(shù)n.
第二步,令i=2.
第三步,用i除n,得到余數(shù)r.
第四步,判斷是否成立.若是,則n不是質(zhì)數(shù),結(jié)束算法;否則,將i的值增加1,
仍用i表示.
第五步,判斷“i>(n-1)”是否成立.若是,則n是質(zhì)數(shù),結(jié)束算法;否則,返回第三步.
例2寫(xiě)出用“二分法”求方程X2-2=0(x>0)的近似解的算法.
分析:令*x)=x2-2,則方程X2-2=0(x>0)的解就是函數(shù)f(x)的零點(diǎn).
“二分法”的基本思想是:把函數(shù)f(x)的零點(diǎn)所在的區(qū)間[a,b](滿足f(a)-f(b)<0)“一分
為二”,得到[a,m]和[m,b].根據(jù)“f(a>f(m)〈O”是否成立,取出零點(diǎn)所在的區(qū)間[a,m]或
[m,b],仍記為[a,b].對(duì)所得的區(qū)間[a,b]重復(fù)上述步驟,直到包含零點(diǎn)的區(qū)間[a,b]“足
夠小'',則[a,b]內(nèi)的數(shù)可以作為方程的近似解.
解:第一步,令f(x尸x2-2,給定精確度d.
第二步,確定區(qū)間[a,b],滿足f(a>f(b)<0.
第三步,取區(qū)間中點(diǎn)m=3〃.
2
第四步,若f(a>f(m)<0,則含零點(diǎn)的區(qū)間為Ca,m];否則,含零點(diǎn)的區(qū)間為[m,b].將新得
到的含零點(diǎn)的區(qū)間仍記為[a,b].
第五步,判斷[a,b]的長(zhǎng)度是否小于d或f(m)是否等于0.若是,則m是方程的近似解;
否則,返回第三步.
當(dāng)d=0.005時(shí),按照以上算法,可以得到下表.
ab|a-b|
121
11.50.5
1.251.50.25
1.3751.50.125
1.3751.43750.0625
1.406251.43750.03125
1.406251.4218750.015625
1.41406251.4218750.0078125
1.41406251.417968750.00390625
于是,開(kāi)區(qū)間(1.4140625,1.41796875)中的實(shí)數(shù)都是當(dāng)精確度為0.005時(shí)的原方程的
近似解.實(shí)際上,上述步驟也是求痣的近似值的一個(gè)算法.
點(diǎn)評(píng):算法一般是機(jī)械的,有時(shí)需要進(jìn)行大量的重復(fù)計(jì)算,只要按部就班地去做,總能算出
結(jié)果,通常把算法過(guò)程稱為“數(shù)學(xué)機(jī)械化數(shù)學(xué)機(jī)械化的最大優(yōu)點(diǎn)是它可以借助計(jì)算機(jī)來(lái)完
成,實(shí)際上處理任何問(wèn)題都需要算法.如:中國(guó)象棋有中國(guó)象棋的棋譜、走法、勝負(fù)的評(píng)判
準(zhǔn)則;而國(guó)際象棋有國(guó)際象棋的棋譜、走法、勝負(fù)的評(píng)判準(zhǔn)則;再比如申請(qǐng)出國(guó)有一系列的
先后手續(xù),購(gòu)買(mǎi)物品也有相關(guān)的手續(xù)……
思路2
例1一個(gè)人帶著三只狼和三只羚羊過(guò)河,只有一條船,同船可容納一個(gè)人和兩只動(dòng)物,沒(méi)
有人在的時(shí)候,如果狼的數(shù)量不少于羚羊的數(shù)量就會(huì)吃羚羊.該人如何將動(dòng)物轉(zhuǎn)移過(guò)河?請(qǐng)
設(shè)計(jì)算法.
分析:任何動(dòng)物同船不用考慮動(dòng)物的爭(zhēng)斗但需考慮承載的數(shù)量,還應(yīng)考慮到兩岸的動(dòng)物都得
保證狼的數(shù)量要小于羚羊的數(shù)量,故在算法的構(gòu)造過(guò)程中盡可能保證船里面有狼,這樣才能
使得兩岸的羚羊數(shù)量占到優(yōu)勢(shì).
解:具體算法如下:
算法步驟:
第一步:人帶兩只狼過(guò)河,并自己返回.
第二步:人帶一只狼過(guò)河,自己返回.
第三步:人帶兩只羚羊過(guò)河,并帶兩只狼返回.
第四步:人帶一只羊過(guò)河,自己返回.
第五步:人帶兩只狼過(guò)河.
點(diǎn)評(píng):算法是解決某一類問(wèn)題的精確描述,有些問(wèn)題使用形式化、程序化的刻畫(huà)是最恰當(dāng)?shù)?
這就要求我們?cè)趯?xiě)算法時(shí)應(yīng)精練、簡(jiǎn)練、清晰地表達(dá),要善于分析任何可能出現(xiàn)的情況,體
現(xiàn)思維的嚴(yán)密性和完整性.本題型解決問(wèn)題的算法中某些步驟重復(fù)進(jìn)行多次才能解決,在現(xiàn)
實(shí)生活中,很多較復(fù)雜的情境經(jīng)常遇到這樣的問(wèn)題,設(shè)計(jì)算法的時(shí)候,如果能夠合適地利用
某些步驟的重復(fù),不但可以使得問(wèn)題變得簡(jiǎn)單.,而且可以提高工作效率.
例2喝一杯茶需要這樣兒個(gè)步驟:洗刷水壺、燒水、洗刷茶具、沏茶.問(wèn):如何安排這幾
個(gè)步驟?并給出兩種算法,再加以比較.
分析:本例主要為加深對(duì)算法概念的理解,可結(jié)合生活常識(shí)對(duì)問(wèn)題進(jìn)行分析,然后解決問(wèn)題.
解:算法一:
第一步,洗刷水壺.
第二步,燒水.
第三步,洗刷茶具.
第四步,沏茶.
算法二:
第一步,洗刷水壺.
第二步,燒水,燒水的過(guò)程當(dāng)中洗刷茶具.
第三步,沏茶.
點(diǎn)評(píng):解決一個(gè)問(wèn)題可有多個(gè)算法,可以選擇其中最優(yōu)的、最簡(jiǎn)單的、步驟盡量少的算法.上
面的兩種算法都符合題意,但是算法二運(yùn)用了統(tǒng)籌方法的原理,因此這個(gè)算法要比算法一更
科學(xué).
例3寫(xiě)出通過(guò)尺軌作圖確定線段AB一個(gè)5等分點(diǎn)的算法.
分析:我們借助于平行線定理,把位置的比例關(guān)系變成已知的比例關(guān)系,只要按照規(guī)則一步
一步去做就能完成任務(wù).
解:算法分析:
第一步,從已知線段的左端點(diǎn)A出發(fā),任意作一條與AB不平行的射線AP.
第二步,在射線上任取一個(gè)不同于端點(diǎn)A的點(diǎn)C,得到線段AC.
第三步,在射線上沿AC的方向截取線段CE=AC.
第四步,在射線上沿AC的方向截取線段EF=AC.
第五步,在射線上沿AC的方向截取線段FG=AC.
第六步,在射線上沿AC的方向截取線段GD=AC,那么線段AD=5AC.
第七步,連結(jié)DB.
第八步,過(guò)C作BD的平行線,交線段AB于M,這樣點(diǎn)M就是線段AB的一個(gè)5等分點(diǎn).
點(diǎn)評(píng):用算法解決幾何問(wèn)題能很好地訓(xùn)練學(xué)生的思維能力,并能幫助我們得到解決幾何問(wèn)題
的一般方法,可謂一舉多得,應(yīng)多加訓(xùn)練.
知能訓(xùn)練
設(shè)計(jì)算法判斷一元二次方程ax2+bx+c=O是否有實(shí)數(shù)根.
解:算法步驟如下:
第一步,輸入一元二次方程的系數(shù):a,b,c.
第二步,計(jì)算A=b2-4ac的值.
第三步,判斷AK)是否成立.若AK)成立,輸出“方程有實(shí)根”;否則輸出“方程無(wú)實(shí)根”,結(jié)
束算法.
點(diǎn)評(píng):用算法解決問(wèn)題的特點(diǎn)是:具有很好的程序性,是一種通法.并且具有確定性、邏輯
性、有窮性.讓我們結(jié)合例題仔細(xì)體會(huì)算法的特點(diǎn).
拓展提升
中國(guó)網(wǎng)通規(guī)定:撥打市內(nèi)電話時(shí),如果不超過(guò)3分鐘,則收取話費(fèi)0.22元;如果通話
時(shí)間超過(guò)3分鐘,則超出部分按每分鐘0.1元收取通話費(fèi),不足一分鐘按?分鐘計(jì)算.設(shè)通話
時(shí)間為t(分鐘),通話費(fèi)用丫(元),如何設(shè)計(jì)一個(gè)程序,計(jì)算通話的費(fèi)用.
解:算法分析:
數(shù)學(xué)模型實(shí)際上為:y關(guān)于t的分段函數(shù).
關(guān)系式如下:
0.22,(0<f<3),
y=?0.22+0.1(/—3),(f〉3,twZ),
0.22+0.1([T-3]+1),(7>3,f[Z).
其中[t-3]表示取不大于t—3的整數(shù)部分.
算法步驟如下:
第一步,輸入通話時(shí)間t.
第二步,如果S3,那么y=0.22;否則判斷twz是否成立,若成立執(zhí)行
y=0.2+0.1x(t-3);否則執(zhí)行y=0.2+0.1x([t-3]+1).
第三步,輸出通話費(fèi)用c.
課堂小結(jié)
(1)正確理解算法這一概念.
(2)結(jié)合例題掌握算法的特點(diǎn),能夠?qū)懗龀R?jiàn)問(wèn)題的算法.
作業(yè)
課本本節(jié)練習(xí)1、2.
設(shè)計(jì)感想
本節(jié)的引入精彩獨(dú)特,讓學(xué)生在感興趣的故事里進(jìn)入本節(jié)的學(xué)習(xí).算法是本章的重點(diǎn)也
是本章的基礎(chǔ),是一個(gè)較難理解的概念.為了讓學(xué)生正確理解這一概念,本節(jié)設(shè)置了大量學(xué)
生熟悉的事例,讓學(xué)生仔細(xì)體會(huì)反復(fù)訓(xùn)練.本節(jié)的事例有古老的經(jīng)典算法,有幾何算法等,
因此這是一節(jié)很好的課例.
備課資料
這是中國(guó)古代的一個(gè)著名算法案例:雞兔49頭,100根腿往地里走,問(wèn)雞兔各多少?
分析:求解雞兔的問(wèn)題簡(jiǎn)單直觀,卻包含著深刻的算法思想.應(yīng)用解二元詼方程組的方法
來(lái)求解雞兔同籠問(wèn)題.
解:算法如下:
第一步,設(shè)有小雞X只,小兔y只,則有;二仆
2x+4y=100.(2)
第二步,將方程組中的第一個(gè)方程兩邊乘以一2加到第二個(gè)方程中去,得到
x+y=49,,
\?解得尸1.
[(4-2)^^100-49x2,
第三步,將y=l代入①,得x=48.
1.1.2程序框圖與算法的基本邏輯結(jié)構(gòu)
整體設(shè)計(jì)
教學(xué)分析
用自然語(yǔ)言表示的算法步驟有明確的順序性,但是對(duì)于在一定條件下才會(huì)被執(zhí)行的步
驟,以及在?定條件下會(huì)被重復(fù)執(zhí)行的步驟,自然語(yǔ)言的表示就顯得困難,而且不直觀、不
準(zhǔn)確.因此,本節(jié)有必要探究使算法表達(dá)得更加直觀、準(zhǔn)確的方法.程序框圖用圖形的方式表
達(dá)算法,使算法的結(jié)構(gòu)更清楚、步驟更直觀也更精確.為了更好地學(xué)好程序框圖,我們需要
掌握程序框的功能和作用,需要熟練掌握三種基本邏輯結(jié)構(gòu).
三維目標(biāo)
1.熟悉各種程序框及流程線的功能和作用.
2.通過(guò)模仿、操作、探索,經(jīng)歷通過(guò)設(shè)計(jì)程序框圖表達(dá)解決問(wèn)題的過(guò)程.在具體問(wèn)題的解決
過(guò)程中,理解程序框圖的三種基本邏輯結(jié)構(gòu):順序結(jié)構(gòu)、條件結(jié)構(gòu)、循環(huán)結(jié)構(gòu).
3.通過(guò)比較體會(huì)程序框圖的直觀性、準(zhǔn)確性.
重點(diǎn)難點(diǎn)
數(shù)學(xué)重點(diǎn):程序框圖的畫(huà)法.
數(shù)學(xué)難點(diǎn):程序框圖的畫(huà)法.
課時(shí)安排
4課時(shí)
教學(xué)過(guò)程
第1課時(shí)程序框圖及順序結(jié)構(gòu)
導(dǎo)入新課
思路1(情境導(dǎo)入)
我們都喜歡外出旅游,優(yōu)美的風(fēng)景美不勝收,如果迷了路就不好玩了,問(wèn)路有時(shí)還聽(tīng)不
明白,真是急死人,有的同學(xué)說(shuō)買(mǎi)張旅游圖不就好了嗎,所以外出旅游先要準(zhǔn)備好旅游圖.
旅游圖看起來(lái)直觀、準(zhǔn)確,本節(jié)將探究使算法表達(dá)得更加直觀、準(zhǔn)確的方法.今天我們開(kāi)始
學(xué)習(xí)程序框圖.
思路2(直接導(dǎo)入)
用自然語(yǔ)言表示的算法步驟有明確的順序性,但是對(duì)于在一定條件下才會(huì)被執(zhí)行的步
驟,以及在一定條件下會(huì)被重復(fù)執(zhí)行的步驟,自然語(yǔ)言的表示就顯得困難,而且不直觀、不
準(zhǔn)確.因此,本節(jié)有必要探究使算法表達(dá)得更加直觀、準(zhǔn)確的方法.今天開(kāi)始學(xué)習(xí)程序框圖.
推進(jìn)新課
新知探究
提出問(wèn)題
(1)什么是程序框圖?
(2)說(shuō)出終端框(起止框)的圖形符號(hào)與功能.
(3)說(shuō)出輸入、輸出框的圖形符號(hào)與功能.
(4)說(shuō)出處理框(執(zhí)行框)的圖形符號(hào)與功能.
(5)說(shuō)出判斷框的圖形符號(hào)與功能.
(6)說(shuō)出流程線的圖形符號(hào)與功能.
(7)說(shuō)出連接點(diǎn)的圖形符號(hào)與功能.
(8)總結(jié)幾個(gè)基本的程序框、流程線和它們表示的功能.
(9)什么是順序結(jié)構(gòu)?
討論結(jié)果:
(1)程序框圖又稱流程圖,是一種用程序框、流程線及文字說(shuō)明來(lái)表示算法的圖形.
在程序框圖中,一個(gè)或幾個(gè)程序框的組合表示算法中的一個(gè)步驟;帶有方向箭頭的流程線將
程序框連接起來(lái),表示算法步驟的執(zhí)行順序.
(2)橢圓形框:O表示程序的開(kāi)始和結(jié)束,稱為終端框(起止框).表示開(kāi)始時(shí)只有一個(gè)
出口;表示結(jié)束時(shí)只有一個(gè)入口.
(3)平行四邊形框:2表示一個(gè)算法輸入和輸出的信息,又稱為輸入、輸出框,它有一個(gè)
入口和一個(gè)出口.
(4)矩形框:口表示計(jì)算、賦值等處理操作,又稱為處理框(執(zhí)行框),它有一個(gè)入口和
一個(gè)出口.
(5)菱形框:。是用來(lái)判斷給出的條件是否成立,根據(jù)判斷結(jié)果來(lái)決定程序的流向,稱
為判斷框,它有一個(gè)入口和兩個(gè)出口.
(6)流程線:一表示程序的流向.
(7)圓圈:。連接點(diǎn).表示相關(guān)兩框的連接處,圓圈內(nèi)的數(shù)字相同的含義表示相連接在一
起.
(8)總結(jié)如下表.
圖形符號(hào)名稱功能
終端框(起止框)表示一個(gè)算法的起始和結(jié)束
//輸入、輸出框表示一個(gè)算法輸入和輸出的信息
—處理框(執(zhí)行框)賦值、計(jì)算
判斷某一條件是否成立,成立時(shí)在出口處標(biāo)明
判斷框
<>“是,,或“Y”;不成立時(shí)標(biāo)明“否”或“N”
1流程線連接程序框
O連接點(diǎn)連接程序框圖的兩部分
(9)很明顯,順序結(jié)構(gòu)是由若干個(gè)依次執(zhí)行的步驟組成的,這是任何一個(gè)算法都離不開(kāi)的基
本結(jié)構(gòu).
三種邏輯結(jié)構(gòu)可以用如下程序框圖表示:
例1請(qǐng)用程序框圖表示前面講過(guò)的“判斷整數(shù)n(n>2)是否為質(zhì)數(shù)”的算法.
解:程序框圖如下:
點(diǎn)評(píng):程序框圖是用圖形的方式表達(dá)算法,使算法的結(jié)構(gòu)更清楚,步驟更直觀也更精確.這
里只是讓同學(xué)們初步了解程序框圖的特點(diǎn),感受它的優(yōu)點(diǎn),暫不要求掌握它的畫(huà)法.
變式訓(xùn)練
觀察下面的程序框圖,指!1!該算法解決的問(wèn)題.
解:這是一個(gè)累加求和問(wèn)題,共99項(xiàng)相加,該算法是求—+—+—+…+--—
1x22x33x499x100
的值.
例2已知一個(gè)三角形三條邊的邊長(zhǎng)分別為a,b,c,利用海倫一秦九韶公式設(shè)計(jì)一個(gè)計(jì)算
三角形面積的算法,并畫(huà)出程序框圖表示.(已知三角形三邊邊長(zhǎng)分別為a,b,c,則三角形的
面積為S=4p(p-a)(p-b)(p-c)),其中p="*:*’這個(gè)公式被稱為海倫—秦九韶公
式)
算法分析:這是一個(gè)簡(jiǎn)單的問(wèn)題,只需先算出p的值,再將它代入分式,最后輸出結(jié)果.因
此只用順序結(jié)構(gòu)應(yīng)能表達(dá)出算法.
算法步驟如下:
第一步,輸入三角形三條邊的邊長(zhǎng)a,b,c.
第二步,計(jì)算p=a+1+c.
第三步,計(jì)算S=dp(p-a)(p一b)(p一c).
第四步,輸出S.
程序框圖如下:
[開(kāi)始]
,十,
/輸Afl.ac/
P沖
'I
S=JP(P-a)(P-b)(P-c)
,I,
/輸/
[d束]
點(diǎn)評(píng):很明顯,順序結(jié)構(gòu)是由若干個(gè)依次執(zhí)行的步驟組成的,它是最簡(jiǎn)單的邏輯結(jié)構(gòu),它是
任何一個(gè)算法都離不開(kāi)的基本結(jié)構(gòu).
變式訓(xùn)練
卜.圖所示的是一個(gè)算法的流程圖,已知旬=3,輸出的b=7,求a2的值.
[開(kāi)始)
輸/
、I,
|將小沁的和記而
,i;
I將[記作力
/輸配/
解:根據(jù)題意色土色一7,
2
,.飛]=3,二@2=]].即a?的值為11.
例3寫(xiě)出通過(guò)尺軌作圖確定線段AB的一個(gè)5等分點(diǎn)的程序框圖.
解:利用我們學(xué)過(guò)的順序結(jié)構(gòu)得程序框圖如下:
[開(kāi)始]
|從4點(diǎn)、出發(fā)作一條與48不平行的射線AP|
在射線I:任取一個(gè)不同于端點(diǎn)4的點(diǎn)C,取4C為單位線段.
再在/1C1:順次取點(diǎn)E.EG"滿足CE=EF=FG=G0=4C
連結(jié)8D
過(guò)點(diǎn)C作即的平行線交48于點(diǎn)M點(diǎn)”即為線段48的一個(gè)5等分點(diǎn)
(結(jié)束)
點(diǎn)評(píng):這個(gè)算法步驟具有一般性,對(duì)于任意自然數(shù)n,都可以按照這個(gè)算法的思想,設(shè)計(jì)出
確定線段的n等分點(diǎn)的步驟,解決問(wèn)題,通過(guò)本題學(xué)習(xí)可以鞏固順序結(jié)構(gòu)的應(yīng)用.
知能訓(xùn)練
有關(guān)專家建議,在未來(lái)幾年內(nèi),中國(guó)的通貨膨脹率保持在3%左右,這將對(duì)我國(guó)經(jīng)濟(jì)
的穩(wěn)定有利無(wú)害.所謂通貨膨脹率為3%,指的是每年消費(fèi)品的價(jià)格增長(zhǎng)率為3%.在這種情
況下,某種品牌的鋼琴2004年的價(jià)格是10000元,請(qǐng)用流程圖描述這種鋼琴今后四年的價(jià)
格變化情況,并輸出四年后的價(jià)格.
解:用P表示鋼琴的價(jià)格,不難看出如下算法步驟:
2005年P(guān)=10000x(1+3%)=10300;
2006年P(guān)=10300x(1+3%)=10609;
2007年P(guān)=10609x(1+3%)=10927.27;
2008年P(guān)=10927.27x(1+3%)=11255.09;
因此,價(jià)格的變化情況表為:
年份20042005200620072008
鋼琴的價(jià)格10000103001060910927.2711255.09
程序框圖如下:
[開(kāi)始]
.十.
|p=ioooo|
|E0000X1.03=10300|
,I,
|-二10300x1.03=106091
.廠,
|尸=10609x103=10927.27]
,i,
|P=10927.27x1.03=11255詞
/輸出尸/
~jr
[結(jié)束]
點(diǎn)評(píng):順序結(jié)構(gòu)只需嚴(yán)格按照傳統(tǒng)的解決數(shù)學(xué)問(wèn)題的解題思路,將問(wèn)題解決掉.最后將解題
步驟"細(xì)化就可以.“細(xì)化”指的是寫(xiě)出算法步驟、畫(huà)出程序框圖.
拓展提升
如下給出的是計(jì)算的值的一個(gè)流程圖,其中判斷框內(nèi)應(yīng)填入的條
24620
件是
/輸出S/
[結(jié)束]
答案:i>10.
課堂小結(jié)
(1)掌握程序框的畫(huà)法和功能.
(2)了解什么是程序框圖,知道學(xué)習(xí)程序框圖的意義.
(3)掌握順序結(jié)構(gòu)的應(yīng)用,并能解決與順序結(jié)構(gòu)有關(guān)的程序框圖的畫(huà)法.
作業(yè)
習(xí)題1.1A1.
設(shè)計(jì)感想
首先,本節(jié)的引入新穎獨(dú)特,旅游圖的故事闡明了學(xué)習(xí)程序框圖的意義.通過(guò)豐富有趣
的事例讓學(xué)生了解了什么是程序框圖,進(jìn)而激發(fā)學(xué)生學(xué)習(xí)程序框圖的興趣.本節(jié)設(shè)計(jì)題目難
度適中,逐步把學(xué)生帶入知識(shí)的殿堂,是一節(jié)好的課例.
第2課時(shí)條件結(jié)構(gòu)
導(dǎo)入新課
思路1(情境導(dǎo)入)
我們以前聽(tīng)過(guò)這樣一個(gè)故事,野獸與鳥(niǎo)發(fā)生了一場(chǎng)戰(zhàn)爭(zhēng),蝙蝠來(lái)了,野獸們喊道:你有
牙齒是我們一伙的,鳥(niǎo)們喊道:你有翅膀是我們一伙的,蝙蝠一時(shí)沒(méi)了主意.過(guò)了一會(huì)兒蝙
蝠有了一個(gè)好辦法,如果野獸贏了,就加入野獸這一伙,否則加入另一伙,事實(shí)上蝙蝠用了
分類討論思想,在算法和程序框圖中也經(jīng)常用到這一思想方法,今天我們開(kāi)始學(xué)習(xí)新的邏輯
結(jié)構(gòu)——條件結(jié)構(gòu).
思路2(直接導(dǎo)入)
前面我們學(xué)習(xí)了順序結(jié)構(gòu),順序結(jié)構(gòu)像是一條沒(méi)有分支的河流,奔流到海不復(fù)回,事實(shí)
上多數(shù)河流是有分支的,今天我們開(kāi)始學(xué)習(xí)有分支的邏輯結(jié)構(gòu)——條件結(jié)構(gòu).
推進(jìn)新課
新知探究
提出問(wèn)題
(1)舉例說(shuō)明什么是分類討論思想?
(2)什么是條件結(jié)構(gòu)?
(3)試用程序框圖表示條件結(jié)構(gòu).
(4)指出條件結(jié)構(gòu)的兩種形式的區(qū)別.
討論結(jié)果:
(1)例如解不等式ax>8(a#)),不等式兩邊需要同除a,需要明確知道a的符號(hào),但條件沒(méi)有
給出,因此需要進(jìn)行分類討論,這就是分類討論思想.
(2)在一個(gè)算法中,經(jīng)常會(huì)遇到一些條件的判斷,算法的流程根據(jù)條件是否成立有不同的
流向.條件結(jié)構(gòu)就是處理這種過(guò)程的結(jié)構(gòu).
(3)用程序框圖表示條件結(jié)構(gòu)如下.
條件結(jié)構(gòu):先根據(jù)條件作出判斷,再?zèng)Q定執(zhí)行哪種操作的結(jié)構(gòu)就稱為條件結(jié)構(gòu)(或分支結(jié)
構(gòu)),如圖1所示.執(zhí)行過(guò)程如下:條件成立,則執(zhí)行A框;不成立,則執(zhí)行B框.
注:無(wú)論條件是否成立,只能執(zhí)行A、B之一,不可能兩個(gè)框都執(zhí)行.A、B兩個(gè)框中,可
以有一個(gè)是空的,即不執(zhí)行任何操作,如圖2.
(4)一種是在兩個(gè)“分支”中均包含算法的步驟,符合條件就執(zhí)行“步驟A”,否則執(zhí)行“步驟
B”;另一種是在一個(gè)“分支”中均包含算法的步驟A,而在另一個(gè)“分支”上不包含算法的任何
步驟,符合條件就執(zhí)行“步驟A”,否則執(zhí)行這個(gè)條件結(jié)構(gòu)后的步驟.
應(yīng)用示例
例1任意給定3個(gè)正實(shí)數(shù),設(shè)計(jì)一個(gè)算法,判斷以這3個(gè)正實(shí)數(shù)為三邊邊長(zhǎng)的三角形
是否存在,并畫(huà)出這個(gè)算法的程序框圖.
算法分析:判斷以3個(gè)任意給定的正實(shí)數(shù)為三條邊邊長(zhǎng)的三角形是否存在,只需驗(yàn)證這3
個(gè)數(shù)中任意兩個(gè)數(shù)的和是否大于第3個(gè)數(shù).這個(gè)驗(yàn)證需要用到條件結(jié)構(gòu).
算法步驟如下:
第一步,輸入3個(gè)正實(shí)數(shù)a,b,c.
第二步,判斷a+b>c,b+c>a,c+a>b是否同時(shí)成立.若是,則存在這樣的三角形;否則,不
存在這樣的三角形.
程序框圖如右圖:
點(diǎn)評(píng):根據(jù)構(gòu)成三角形的條件,判斷是否滿足任意兩邊之和大于第三邊,如果滿足則存在這
樣的三角形,如果不滿足則不存在這樣的三角形.這種分類討論思想是高中的重點(diǎn),在畫(huà)程
序框圖時(shí),常常遇到需要討論的問(wèn)題,這時(shí)要用到條件結(jié)構(gòu).
例2設(shè)計(jì)一個(gè)求解一元二次方程ax2+bx+c=0的算法,并畫(huà)出程序框圖表示.
算法分析:我們知道,若判別式△=b2』ac>0,則原方程有兩個(gè)不相等的實(shí)數(shù)根
—b+A/A-b-VA
Xl=--------,X2=--------;
2a2a
b
若A=0,則原方程有兩個(gè)相等的實(shí)數(shù)根xi=x=——;
22a
若A<0,則原方程沒(méi)有實(shí)數(shù)根.也就是說(shuō),在求解方程之前,可以先判斷判別式的符號(hào),根
據(jù)判斷的結(jié)果執(zhí)行不同的步驟,這個(gè)過(guò)程可以用條件結(jié)構(gòu)實(shí)現(xiàn).
又因?yàn)榉匠痰膬蓚€(gè)根有相同的部分,為了避免重復(fù)計(jì)算,可以在計(jì)算X1和X2之前,先計(jì)算
bVA
p=----,q=----.
2a2a
解決這一問(wèn)題的算法步驟如下:
第一步,輸入3個(gè)系數(shù)a,b,c.
第二步,計(jì)算A=b2Nac.
第三步,判斷A>0是否成立.若是,貝U計(jì)算p=-2,q=YA.否則,輸出“方程沒(méi)有實(shí)數(shù)根”,
2a2a
結(jié)束算法.
第四步,判斷A=0是否成立.若是,則輸出xi=x2=p:否則,計(jì)算xi=p+q,x2=p-q,并輸出
X),x2.
程序框圖如下:
例3設(shè)計(jì)算法判斷一元二次方程ax2+bx+c=O是否有實(shí)數(shù)根,并畫(huà)出相應(yīng)的程序框圖.
解:算法步驟如下:
第一步,輸入3個(gè)系數(shù):a.b,c.
第二步,計(jì)算△=!?—4ac.
第三步,判斷AK)是否成立.若是,則輸出“方程有實(shí)根”;否則,輸出“方程無(wú)實(shí)根”.結(jié)束算
法.
相應(yīng)的程序框圖如右:
[開(kāi)始)
/輸Aa,“c/
'JI:
=6'-4ac|
/箱出力程有實(shí)根?//輸出“方程無(wú)實(shí)根;/
I.[
[結(jié)束)
點(diǎn)評(píng):根據(jù)一元二次方程的意義,需要計(jì)算判別式4ac的值.再分成兩種情況處理:(1)
當(dāng)AK)時(shí),一元二次方程有實(shí)數(shù)根;
(2)當(dāng)A<0時(shí),一元二次方程無(wú)實(shí)數(shù)根.該問(wèn)題實(shí)際上是一個(gè)分類討論問(wèn)題,根據(jù)一元二
次方程系數(shù)的不同情況,最后結(jié)果就不同.因而當(dāng)給出一個(gè)一元二次方程時(shí),必須先確定判
別式的值,然后再用判別式的值的取值情況確定方程是否有解.該例僅用順序結(jié)構(gòu)是辦不到
的,要對(duì)判別式的值進(jìn)行判斷,需要用到條件結(jié)構(gòu).
例4(1)設(shè)計(jì)算法,求ax+b=O的解,并畫(huà)出流程圖.
解:對(duì)于方程ax+b=O來(lái)講,應(yīng)該分情況討論方程的解.
我們要對(duì)次項(xiàng)系數(shù)a和常數(shù)項(xiàng)b的取值情況進(jìn)行分類,分類如下:
b
(1)當(dāng)a#)時(shí),方程有唯?的實(shí)數(shù)解是--;
a
(2)當(dāng)a=0,b=0B'f,全體實(shí)數(shù)都是方程的解;
(3)當(dāng)a=0,b#)時(shí),方程無(wú)解.
聯(lián)想數(shù)學(xué)中的分類討論的處理方式,可得如下算法步驟:
第一步,判斷存0是否成立.若成立,輸出結(jié)果“解為
a
第二步,判斷a=0,b=0是否同時(shí)成立.若成立,輸出結(jié)果“解集為R”.
第三步,判斷a=0,b翔是否同時(shí)成立.若成立,輸出結(jié)果“方程無(wú)解”,結(jié)束算法.
程序框圖如下:
點(diǎn)評(píng):這是條件結(jié)構(gòu)疊加問(wèn)題,條件結(jié)構(gòu)疊加,程序執(zhí)行時(shí)需依次對(duì)“條件1”“條件2”“條件
3”……都進(jìn)行判斷,只有遇到能滿足的條件才執(zhí)行該條件對(duì)應(yīng)的操作.
知能訓(xùn)練
設(shè)計(jì)算法,找出輸入的三個(gè)不相等實(shí)數(shù)a、b、c中的最大值,并畫(huà)出流程圖.
解:算法步驟:
第一步,輸入a,b,c的值.
第二步,判斷a>b是否成立,若成立,則執(zhí)行第三步;否則執(zhí)行第四步.
第三步,判斷a>c是否成立,若成立,則輸出a,并結(jié)束;否則輸出c,并結(jié)束.
第四步,判斷b>c是否成立,若成立,則輸出b,并結(jié)束;否則輸出c,并結(jié)束.
程序框圖如下:
/輸出。//輸出c//輸出6//輸出c/
[結(jié)束)
點(diǎn)評(píng):條件結(jié)構(gòu)嵌套與條件結(jié)構(gòu)疊加的區(qū)別:
(1)條件結(jié)構(gòu)疊加,程序執(zhí)行時(shí)需依次對(duì)“條件1”“條件2”“條件3”……都進(jìn)行判斷,只有
遇到能滿足的條件才執(zhí)行該條件對(duì)應(yīng)的操作.
(2)條件結(jié)構(gòu)的嵌套中,“條件2”是“條件1”的一個(gè)分支,“條件3”是“條件2”的一個(gè)分支……
依此類推,這些條件中很多在算法執(zhí)行過(guò)程中根據(jù)所處的分支位置不同可能不被執(zhí)行.
(3)條件結(jié)構(gòu)嵌套所涉及的“條件2”“條件3”……是在前面的所有條件依次一個(gè)一個(gè)的滿足
“分支條件成立'’的情況下才能執(zhí)行的此操作,是多個(gè)條件同時(shí)成立的疊加和復(fù)合.
例5“特快專遞”是目前人們經(jīng)常使用的異地郵寄信函或托運(yùn)物品的種快捷方式.某快遞
公司規(guī)定甲、乙兩地之間物品的托運(yùn)費(fèi)用根據(jù)下列方法計(jì)算:
(0.530,(3<50),
50x0.53+(ty-50)x0.85,(<y>50).
其中f(單位:元)為托運(yùn)費(fèi),3為托運(yùn)物品的重量(單位:千克).
試畫(huà)出計(jì)算費(fèi)用f的程序框圖.
分析:這是一個(gè)實(shí)際問(wèn)題,根據(jù)數(shù)學(xué)模型可知,求費(fèi)用f的計(jì)算公式隨物品重量3的變化而
有所不同,因此計(jì)算時(shí)先看物品的重量,在不同的條件下,執(zhí)行不同的指令,這是條件結(jié)構(gòu)
的運(yùn)用,是二分支條件結(jié)構(gòu).其中,物品的重量通過(guò)輸入的方式給出.
解:算法程序框圖如右圖:
拓展提升
有一城市,市區(qū)為半徑為15km的圓形區(qū)域,近郊區(qū)為距中心15—25km的范圍內(nèi)的
環(huán)形地帶,距中心25km以外的為遠(yuǎn)郊區(qū),如右圖所示.市區(qū)地價(jià)每公頃100萬(wàn)元,近郊區(qū)
地價(jià)每公頃60萬(wàn)元,遠(yuǎn)郊區(qū)地價(jià)為每公頃20萬(wàn)元,輸入某一點(diǎn)的坐標(biāo)為(x,y),求該點(diǎn)的地
價(jià).
分析:由該點(diǎn)坐標(biāo)(x,y),求其與市中心的距離尸正+/2,確定是市區(qū)、近郊區(qū),還是
100,0<r<15,
遠(yuǎn)郊區(qū),進(jìn)而確定地價(jià)p.由題意知,p=<60,15<r<25,
20,r>25.
解:程序框圖如下:
課堂小結(jié)
(1)理解兩種條件結(jié)構(gòu)的特點(diǎn)和區(qū)別.
(2)能用學(xué)過(guò)的兩種條件結(jié)構(gòu)解決常見(jiàn)的算法問(wèn)題.
作業(yè)
習(xí)題1.1A組3.
設(shè)計(jì)感想
本節(jié)采用引人入勝的方法引入正課,選用的例題難度適中,有的經(jīng)典實(shí)用,有的新穎獨(dú)
特,每個(gè)例題都是很好的素材.條件結(jié)構(gòu)是邏輯結(jié)構(gòu)的核心,是培養(yǎng)學(xué)生邏輯推理的好素材,
本節(jié)設(shè)計(jì)符合新課標(biāo)精神,難度設(shè)計(jì)略高于教材.
第3課時(shí)循環(huán)結(jié)構(gòu)
導(dǎo)入新課
思路1(情境導(dǎo)入)
我們都想生活在一個(gè)優(yōu)美的環(huán)境中,希望看到的是碧水藍(lán)天,大家知道工廠的污水是怎
樣處理的嗎?污水進(jìn)入處理裝置后進(jìn)行第一次處理,如果達(dá)不到排放標(biāo)準(zhǔn),則需要再進(jìn)入處
理裝置進(jìn)行處理,直到達(dá)到排放標(biāo)準(zhǔn).污水處理裝置是一個(gè)循環(huán)系統(tǒng),對(duì)于處理需要反復(fù)操
作的事情有很大的優(yōu)勢(shì).我們數(shù)學(xué)中有很多問(wèn)題需要反復(fù)操作,今天我們學(xué)習(xí)能夠反復(fù)操作
的邏輯結(jié)構(gòu)——循環(huán)結(jié)構(gòu).
思路2(直接導(dǎo)入)
前面我們學(xué)習(xí)了順序結(jié)構(gòu),順序結(jié)構(gòu)像一條沒(méi)有分支的河流,奔流到海不復(fù)回;上一節(jié)
我們學(xué)習(xí)了條件結(jié)構(gòu),條件結(jié)構(gòu)像有分支的河流最后歸入大海;事實(shí)上很多水系是循環(huán)往復(fù)
的,今天我們開(kāi)始學(xué)習(xí)循環(huán)往復(fù)的邏輯結(jié)構(gòu)一循環(huán)結(jié)構(gòu).
推進(jìn)新課
新知探究
提出問(wèn)題
(1)請(qǐng)大家舉出一些常見(jiàn)的需要反復(fù)計(jì)算的例子.
(2)什么是循環(huán)結(jié)構(gòu)、循環(huán)體?
(3)試用程序框圖表示循環(huán)結(jié)構(gòu).
(4)指出兩種循環(huán)結(jié)構(gòu)的相同點(diǎn)和不同點(diǎn).
討論結(jié)果:
(1)例如用二分法求方程的近似解、數(shù)列求和等.
(2)在?些算法中,經(jīng)常會(huì)出現(xiàn)從某處開(kāi)始,按照一定的條件反復(fù)執(zhí)行某些步驟的情況,
這就是循環(huán)結(jié)構(gòu).反復(fù)執(zhí)行的步驟稱為循環(huán)體.
(3)在一些算法中要求重復(fù)執(zhí)行同一操作的結(jié)構(gòu)稱為循環(huán)結(jié)構(gòu).即從算法某處開(kāi)始,按照
定條件重復(fù)執(zhí)行某,處理的過(guò)程.重復(fù)執(zhí)行的處理步驟稱為循環(huán)體.
循環(huán)結(jié)構(gòu)有兩種形式:當(dāng)型循環(huán)結(jié)構(gòu)和直到型循環(huán)結(jié)構(gòu).
1°當(dāng)型循環(huán)結(jié)構(gòu),如圖(1)所示,它的功能是當(dāng)給定的條件P成立時(shí),執(zhí)行A框,A
框執(zhí)行完畢后,返回來(lái)再判斷條件P是否成立,如果仍然成立,返回來(lái)再執(zhí)行A框,如此
反復(fù)執(zhí)行A框,直到某一次返回來(lái)判斷條件P不成立時(shí)為止,此時(shí)不再執(zhí)行A框,離開(kāi)循
環(huán)結(jié)構(gòu).繼續(xù)執(zhí)行下面的框圖.
2°直到型循環(huán)結(jié)構(gòu),如圖(2)所示,它的功能是先執(zhí)行重復(fù)執(zhí)行的A框,然后判斷
給定的條件P是否成立,如果P仍然不成立,則返回來(lái)繼續(xù)執(zhí)行A框,再判斷條件P是否
成立.繼續(xù)重復(fù)操作,直到某一次給定的判斷條件P時(shí)成立為止,此時(shí)不再返回來(lái)執(zhí)行A框,
離開(kāi)循環(huán)結(jié)構(gòu).繼續(xù)執(zhí)行下面的框圖.
見(jiàn)示意圖:
當(dāng)型循環(huán)結(jié)構(gòu)直到型循環(huán)結(jié)構(gòu)
(4)兩種循環(huán)結(jié)構(gòu)的不同點(diǎn):直到型循環(huán)結(jié)構(gòu)是程序先進(jìn)入循環(huán)體,然后對(duì)條件進(jìn)行判斷,
如果條件不滿足,就繼續(xù)執(zhí)行循環(huán)體,直到條件滿足時(shí)終止循環(huán).
當(dāng)型循環(huán)結(jié)構(gòu)是在每次執(zhí)行循環(huán)體前,先對(duì)條件進(jìn)行判斷,當(dāng)條件滿足時(shí),執(zhí)行循環(huán)體,
否則終止循環(huán).
兩種循環(huán)結(jié)構(gòu)的相同點(diǎn):兩種不同形式的循環(huán)結(jié)構(gòu)可以看出,循環(huán)結(jié)構(gòu)中一定包含條件
結(jié)構(gòu),用于確定何時(shí)終止執(zhí)行循環(huán)體.
應(yīng)用示例
思路1
例1設(shè)計(jì)一個(gè)計(jì)算1+2+……+100的值的算法,并畫(huà)出程序框圖.
算法分析:通常,我們按照下列過(guò)程計(jì)算1+2+……+1法的值.
第1步,0+1=1.
第2步,1+2=3.
第3步,3+3=6.
第4步,6+4=10.
第100步,4950+100=5050.
顯然,這個(gè)過(guò)程中包含重復(fù)操作的步驟,可以用循環(huán)結(jié)構(gòu)表示.分析上述計(jì)算過(guò)程,可
以發(fā)現(xiàn)每一步都可以表示為第(i-l)步的結(jié)果+1=第i步的結(jié)果.
為了方便、有效地表示上述過(guò)程,我們用一個(gè)累加變量S來(lái)表示第一步的計(jì)算結(jié)果,
即把S+i的結(jié)果仍記為S,從而把第i步表示為S=S+i,
其中S的初始值為0,i依次取1,2,…,100,由于i同時(shí)記錄了循環(huán)的次數(shù),所以也
稱為計(jì)數(shù)變量.
解決這一問(wèn)題的算法是:
第一步,令i=l,S=0.
第二步,若區(qū)100成立,則執(zhí)行第三步;否則,輸出S,結(jié)束算法.
第三步,S=S+i.
第四步,i=i+l,返回第二步.
程序框圖如右:
上述程序框圖用的是當(dāng)型循環(huán)結(jié)構(gòu),如果用直到型循環(huán)結(jié)構(gòu)表示,則程序框圖如下:
點(diǎn)評(píng):這是一個(gè)典型的用循環(huán)結(jié)構(gòu)解決求和的問(wèn)題,有典型的代表意義,可把它作為一個(gè)范
例,仔細(xì)體會(huì)三種邏輯結(jié)構(gòu)在程序框圖中的作用,學(xué)會(huì)畫(huà)程序框圖.
變式訓(xùn)練
已知有一列數(shù)』,2」,一J,設(shè)計(jì)框圖實(shí)現(xiàn)求該列數(shù)前2。項(xiàng)的和.
234n+1
分析:該列數(shù)中每一項(xiàng)的分母是分子數(shù)加1,單獨(dú)觀察分子,恰好是1,2,3,4,....n
因此可用循環(huán)結(jié)構(gòu)實(shí)現(xiàn),設(shè)計(jì)數(shù)器i,用14+1實(shí)現(xiàn)分子,設(shè)累加器S,用5=5+——,可
/+1
實(shí)現(xiàn)累加,注意i只能加到20.
解:程序框圖如下:
方法一:方法二:
點(diǎn)評(píng):在數(shù)學(xué)計(jì)算中,i=i+l不成立,S=S+i只有在i=0時(shí)才能成立.在計(jì)算機(jī)程序中,它
們被賦予了其他的功能,不再是數(shù)學(xué)中的“相等”關(guān)系,而是賦值關(guān)系.變量i用來(lái)作計(jì)數(shù)器,
i=i+l的含義是:將變量i的值加1,然后把計(jì)算結(jié)果再存貯到變量i中,即計(jì)數(shù)器i在原值
的基礎(chǔ)上又增加了1.
變量S作為累加器,來(lái)計(jì)算所求數(shù)據(jù)之和.如累加器的初值為0,當(dāng)?shù)谝粋€(gè)數(shù)據(jù)送到變
量i中時(shí),累加的動(dòng)作為S=S+i,即把S的值與變量i的值相加,結(jié)果再送到累加器S中,
如此循環(huán),則可實(shí)現(xiàn)數(shù)的累加求和.
例2某廠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)元的最早年份.
算法分析:先寫(xiě)出解決本例的算法步驟:
第一步,輸入2005年的年生產(chǎn)總值.
第二步,計(jì)算下一年的年生產(chǎn)總值.
第三步,判斷所得的結(jié)果是否大于300,若是,則輸出該年的年份,算法結(jié)束;否則,返回
第二步.
由于“第二步”是重復(fù)操作的步驟,所以本例可以用循環(huán)結(jié)構(gòu)來(lái)實(shí)現(xiàn).我們按照“確定循環(huán)
體”“初始化變量”“設(shè)定循環(huán)控制條件'’的順序來(lái)構(gòu)造循環(huán)結(jié)構(gòu).
(1)確定循環(huán)體:設(shè)a為某年的年生產(chǎn)總值,t為年生產(chǎn)總值的年增長(zhǎng)量,n為年份,則循
環(huán)體為t=0.05a,a=a+t,n=n+l.
(2)初始化變
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 團(tuán)購(gòu)木門(mén)合同范例
- 員工優(yōu)惠合同模板
- 醫(yī)療加盟合同范例
- 享?yè)Q機(jī)合同范例
- 單位買(mǎi)賣物品合同模板
- 凍庫(kù)租賃合同范例
- 2024年工地設(shè)施租賃合同
- 保定醫(yī)院采購(gòu)合同范例
- 2024年工程監(jiān)理安全生產(chǎn)合同
- 個(gè)人施工合同模板簡(jiǎn)易
- 小腦梗死的護(hù)理查房
- 人教版四年級(jí)上冊(cè)三位數(shù)乘兩位數(shù)豎式練習(xí)400題及答案
- 大學(xué)生國(guó)防教育
- 智慧校園匯報(bào)材料課件
- 2024年遼寧盤(pán)錦國(guó)發(fā)實(shí)業(yè)有限公司招聘筆試參考題庫(kù)附帶答案詳解
- 樓蘭古國(guó)完整
- 青茶專業(yè)知識(shí)
- 加大技術(shù)研發(fā)投入推動(dòng)技術(shù)創(chuàng)新
- 醫(yī)院管理學(xué)教學(xué)完整版
- 老人艾滋病防控知識(shí)講座
- 基因突變的發(fā)生和表達(dá)的實(shí)驗(yàn)探究
評(píng)論
0/150
提交評(píng)論