![新課標(biāo)高中數(shù)學(xué)人教A版第一章算法初步教案_第1頁](http://file4.renrendoc.com/view11/M02/0B/37/wKhkGWemrkeAR49HAAKsjWTZ4ns109.jpg)
![新課標(biāo)高中數(shù)學(xué)人教A版第一章算法初步教案_第2頁](http://file4.renrendoc.com/view11/M02/0B/37/wKhkGWemrkeAR49HAAKsjWTZ4ns1092.jpg)
![新課標(biāo)高中數(shù)學(xué)人教A版第一章算法初步教案_第3頁](http://file4.renrendoc.com/view11/M02/0B/37/wKhkGWemrkeAR49HAAKsjWTZ4ns1093.jpg)
![新課標(biāo)高中數(shù)學(xué)人教A版第一章算法初步教案_第4頁](http://file4.renrendoc.com/view11/M02/0B/37/wKhkGWemrkeAR49HAAKsjWTZ4ns1094.jpg)
![新課標(biāo)高中數(shù)學(xué)人教A版第一章算法初步教案_第5頁](http://file4.renrendoc.com/view11/M02/0B/37/wKhkGWemrkeAR49HAAKsjWTZ4ns1095.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
備課資料這是中國古代的一個(gè)著名算法案例:雞兔49頭,100根腿往地里走,問雞兔各多少?分析:求解雞兔的問題簡單直觀,卻包含著深刻的算法思想.應(yīng)用解二元一次方程組的方法來求解雞兔同籠問題.解:算法如下:第一步,設(shè)有小雞x只,小兔y只,則有第二步,將方程組中的第一個(gè)方程兩邊乘以-2加到第二個(gè)方程中去,得到解得y=1.第三步,將y=1代入①,得x=48.第一章算法初步本章教材分析算法是數(shù)學(xué)及其應(yīng)用的重要組成部分,是計(jì)算科學(xué)的重要基礎(chǔ).算法的應(yīng)用是學(xué)習(xí)數(shù)學(xué)的一個(gè)重要方面.學(xué)生學(xué)習(xí)算法的應(yīng)用,目的就是利用已有的數(shù)學(xué)知識分析問題和解決問題.通過算法的學(xué)習(xí),對完善數(shù)學(xué)的思想,激發(fā)應(yīng)用數(shù)學(xué)的意識,培養(yǎng)分析問題、解決問題的能力,增強(qiáng)進(jìn)行實(shí)踐的能力等,都有很大的幫助.本章主要內(nèi)容:算法與程序框圖、基本算法語句、算法案例和小結(jié).教材從學(xué)生最熟悉的算法入手,通過研究程序框圖與算法案例,使算法得到充分的應(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é)生近距離接近社會生活,從生活中學(xué)習(xí)數(shù)學(xué),使數(shù)學(xué)在社會生活中得到應(yīng)用和提高,讓學(xué)生體會到數(shù)學(xué)是有用的,從而培養(yǎng)學(xué)生的學(xué)習(xí)興趣.“數(shù)學(xué)建?!币彩歉呖伎疾橹攸c(diǎn).本章還是數(shù)學(xué)思想方法的載體,學(xué)生在學(xué)習(xí)中會經(jīng)常用到“算法思想”“轉(zhuǎn)化思想”,從而提高自己數(shù)學(xué)能力.因此應(yīng)從三個(gè)方面把握本章:(1)知識間的聯(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輸入語句、輸出語句和賦值語句約1課時(shí)1.2.2條件語句約1課時(shí)1.2.3循環(huán)語句約1課時(shí)1.3算法案例約3課時(shí)本章復(fù)習(xí)約1課時(shí)1.1算法與程序框圖1.1.1算法的概念整體設(shè)計(jì)教學(xué)分析算法在中學(xué)數(shù)學(xué)課程中是一個(gè)新的概念,但沒有一個(gè)精確化的定義,教科書只對它作了如下描述:“在數(shù)學(xué)中,算法通常是指按照一定規(guī)則解決某一類問題的明確有限的步驟.”為了讓學(xué)生更好理解這一概念,教科書先從分析一個(gè)具體的二元一次方程組的求解過程出發(fā),歸納出了二元一次方程組的求解步驟,這些步驟就構(gòu)成了解二元一次方程組的算法.教學(xué)中,應(yīng)從學(xué)生非常熟悉的例子引出算法,再通過例題加以鞏固.三維目標(biāo)1.正確理解算法的概念,掌握算法的基本特點(diǎn).2.通過例題教學(xué),使學(xué)生體會設(shè)計(jì)算法的基本思路.3.通過有趣的實(shí)例使學(xué)生了解算法這一概念的同時(shí),激發(fā)學(xué)生學(xué)習(xí)數(shù)學(xué)的興趣.重點(diǎn)難點(diǎn)教學(xué)重點(diǎn):算法的含義及應(yīng)用.教學(xué)難點(diǎn):寫出解決一類問題的算法.課時(shí)安排1課時(shí)教學(xué)過程導(dǎo)入新課思路1(情境導(dǎo)入)一個(gè)人帶著三只狼和三只羚羊過河,只有一條船,同船可容納一個(gè)人和兩只動(dòng)物,沒有人在的時(shí)候,如果狼的數(shù)量不少于羚羊的數(shù)量狼就會吃羚羊.該人如何將動(dòng)物轉(zhuǎn)移過河?請同學(xué)們寫出解決問題的步驟,解決這一問題將要用到我們今天學(xué)習(xí)的內(nèi)容——算法.思路2(情境導(dǎo)入)大家都看過趙本山與宋丹丹演的小品吧,宋丹丹說了一個(gè)笑話,把大象裝進(jìn)冰箱總共分幾步?答案:分三步,第一步:把冰箱門打開;第二步:把大象裝進(jìn)去;第三步:把冰箱門關(guān)上.上述步驟構(gòu)成了把大象裝進(jìn)冰箱的算法,今天我們開始學(xué)習(xí)算法的概念.思路3(直接導(dǎo)入)算法不僅是數(shù)學(xué)及其應(yīng)用的重要組成部分,也是計(jì)算機(jī)科學(xué)的重要基礎(chǔ).在現(xiàn)代社會里,計(jì)算機(jī)已成為人們?nèi)粘I詈凸ぷ髦胁豢扇鄙俚墓ぞ?聽音樂、看電影、玩游戲、打字、畫卡通畫、處理數(shù)據(jù),計(jì)算機(jī)是怎樣工作的呢?要想弄清楚這個(gè)問題,算法的學(xué)習(xí)是一個(gè)開始.推進(jìn)新課新知探究提出問題(1)解二元一次方程組有幾種方法?(2)結(jié)合教材實(shí)例總結(jié)用加減消元法解二元一次方程組的步驟.(3)結(jié)合教材實(shí)例總結(jié)用代入消元法解二元一次方程組的步驟.(4)請寫出解一般二元一次方程組的步驟.(5)根據(jù)上述實(shí)例談?wù)勀銓λ惴ǖ睦斫?(6)請同學(xué)們總結(jié)算法的特征.(7)請思考我們學(xué)習(xí)算法的意義.討論結(jié)果:(1)代入消元法和加減消元法.(2)回顧二元一次方程組的求解過程,我們可以歸納出以下步驟:第一步,①+②×2,得5x=1.③第二步,解③,得x=.第三步,②-①×2,得5y=3.④第四步,解④,得y=.第五步,得到方程組的解為(3)用代入消元法解二元一次方程組我們可以歸納出以下步驟:第一步,由①得x=2y-1.③第二步,把③代入②,得2(2y-1)+y=1.④第三步,解④得y=.⑤第四步,把⑤代入③,得x=2×-1=.第五步,得到方程組的解為(4)對于一般的二元一次方程組其中a1b2-a2b1≠0,可以寫出類似的求解步驟:第一步,①×b2-②×b1,得(a1b2-a2b1)x=b2c1-b1c2第二步,解③,得x=.第三步,②×a1-①×a2,得(a1b2-a2b1)y=a1c2-a2c1第四步,解④,得y=.第五步,得到方程組的解為(5)算法的定義:廣義的算法是指完成某項(xiàng)工作的方法和步驟,那么我們可以說洗衣機(jī)的使用說明書是操作洗衣機(jī)的算法,菜譜是做菜的算法等等.在數(shù)學(xué)中,算法通常是指按照一定規(guī)則解決某一類問題的明確有限的步驟.現(xiàn)在,算法通??梢跃幊捎?jì)算機(jī)程序,讓計(jì)算機(jī)執(zhí)行并解決問題.(6)算法的特征:①確定性:算法的每一步都應(yīng)當(dāng)做到準(zhǔn)確無誤、不重不漏.“不重”是指不是可有可無的,甚至無用的步驟,“不漏”是指缺少哪一步都無法完成任務(wù).②邏輯性:算法從開始的“第一步”直到“最后一步”之間做到環(huán)環(huán)相扣,分工明確,“前一步”是“后一步”的前提,“后一步”是“前一步”的繼續(xù).③有窮性:算法要有明確的開始和結(jié)束,當(dāng)?shù)竭_(dá)終止步驟時(shí)所要解決的問題必須有明確的結(jié)果,也就是說必須在有限步內(nèi)完成任務(wù),不能無限制地持續(xù)進(jìn)行.(7)在解決某些問題時(shí),需要設(shè)計(jì)出一系列可操作或可計(jì)算的步驟來解決問題,這些步驟稱為解決這些問題的算法.也就是說,算法實(shí)際上就是解決問題的一種程序性方法.算法一般是機(jī)械的,有時(shí)需進(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)類似地,可寫出“判斷35是否為質(zhì)數(shù)”的算法:第一步,用2除35,得到余數(shù)1.因?yàn)橛鄶?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)評:上述算法有很大的局限性,用上述算法判斷35是否為質(zhì)數(shù)還可以,如果判斷1997是否為質(zhì)數(shù)就麻煩了,因此,我們需要尋找普適性的算法步驟.變式訓(xùn)練請寫出判斷n(n>2)是否為質(zhì)數(shù)的算法.分析:對于任意的整數(shù)n(n>2),若用i表示2—(n-1)中的任意整數(shù),則“判斷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.第四步,判斷“r=0”是否成立.若是,則n不是質(zhì)數(shù),結(jié)束算法;否則,將i的值增加1,仍用i表示.第五步,判斷“i>(n-1)”是否成立.若是,則n是質(zhì)數(shù),結(jié)束算法;否則,返回第三步.例2寫出用“二分法”求方程x2-2=0(x>0)的近似解的算法.分析:令f(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)<0”是否成立,取出零點(diǎn)所在的區(qū)間[a,m]或[m,b],仍記為[a,b].對所得的區(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=.第四步,若f(a)·f(m)<0,則含零點(diǎn)的區(qū)間為[a,m];否則,含零點(diǎn)的區(qū)間為[m,b].將新得到的含零點(diǎn)的區(qū)間仍記為[a,b].第五步,判斷[a,b]的長度是否小于d或f(m)是否等于0.若是,則m是方程的近似解;否則,返回第三步.當(dāng)d=0.005時(shí),按照以上算法,可以得到下表.ab|a-b|12111.50.51.251.50.251.3751.50.1251.3751.43750.06251.406251.43750.031251.406251.4218750.0156251.41406251.4218750.00781251.41406251.417968750.00390625于是,開區(qū)間(1.4140625,1.41796875)中的實(shí)數(shù)都是當(dāng)精確度為0.005時(shí)的原方程的近似解.實(shí)際上,上述步驟也是求的近似值的一個(gè)算法.點(diǎn)評:算法一般是機(jī)械的,有時(shí)需要進(jìn)行大量的重復(fù)計(jì)算,只要按部就班地去做,總能算出結(jié)果,通常把算法過程稱為“數(shù)學(xué)機(jī)械化”.數(shù)學(xué)機(jī)械化的最大優(yōu)點(diǎn)是它可以借助計(jì)算機(jī)來完成,實(shí)際上處理任何問題都需要算法.如:中國象棋有中國象棋的棋譜、走法、勝負(fù)的評判準(zhǔn)則;而國際象棋有國際象棋的棋譜、走法、勝負(fù)的評判準(zhǔn)則;再比如申請出國有一系列的先后手續(xù),購買物品也有相關(guān)的手續(xù)……思路2例1一個(gè)人帶著三只狼和三只羚羊過河,只有一條船,同船可容納一個(gè)人和兩只動(dòng)物,沒有人在的時(shí)候,如果狼的數(shù)量不少于羚羊的數(shù)量就會吃羚羊.該人如何將動(dòng)物轉(zhuǎn)移過河?請?jiān)O(shè)計(jì)算法.分析:任何動(dòng)物同船不用考慮動(dòng)物的爭斗但需考慮承載的數(shù)量,還應(yīng)考慮到兩岸的動(dòng)物都得保證狼的數(shù)量要小于羚羊的數(shù)量,故在算法的構(gòu)造過程中盡可能保證船里面有狼,這樣才能使得兩岸的羚羊數(shù)量占到優(yōu)勢.解:具體算法如下:算法步驟:第一步:人帶兩只狼過河,并自己返回.第二步:人帶一只狼過河,自己返回.第三步:人帶兩只羚羊過河,并帶兩只狼返回.第四步:人帶一只羊過河,自己返回.第五步:人帶兩只狼過河.點(diǎn)評:算法是解決某一類問題的精確描述,有些問題使用形式化、程序化的刻畫是最恰當(dāng)?shù)?這就要求我們在寫算法時(shí)應(yīng)精練、簡練、清晰地表達(dá),要善于分析任何可能出現(xiàn)的情況,體現(xiàn)思維的嚴(yán)密性和完整性.本題型解決問題的算法中某些步驟重復(fù)進(jìn)行多次才能解決,在現(xiàn)實(shí)生活中,很多較復(fù)雜的情境經(jīng)常遇到這樣的問題,設(shè)計(jì)算法的時(shí)候,如果能夠合適地利用某些步驟的重復(fù),不但可以使得問題變得簡單,而且可以提高工作效率.例2喝一杯茶需要這樣幾個(gè)步驟:洗刷水壺、燒水、洗刷茶具、沏茶.問:如何安排這幾個(gè)步驟?并給出兩種算法,再加以比較.分析:本例主要為加深對算法概念的理解,可結(jié)合生活常識對問題進(jìn)行分析,然后解決問題.解:算法一:第一步,洗刷水壺.第二步,燒水.第三步,洗刷茶具.第四步,沏茶.算法二:第一步,洗刷水壺.第二步,燒水,燒水的過程當(dāng)中洗刷茶具.第三步,沏茶.點(diǎn)評:解決一個(gè)問題可有多個(gè)算法,可以選擇其中最優(yōu)的、最簡單的、步驟盡量少的算法.上面的兩種算法都符合題意,但是算法二運(yùn)用了統(tǒng)籌方法的原理,因此這個(gè)算法要比算法一更科學(xué).例3寫出通過尺軌作圖確定線段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.第八步,過C作BD的平行線,交線段AB于M,這樣點(diǎn)M就是線段AB的一個(gè)5等分點(diǎn).點(diǎn)評:用算法解決幾何問題能很好地訓(xùn)練學(xué)生的思維能力,并能幫助我們得到解決幾何問題的一般方法,可謂一舉多得,應(yīng)多加訓(xùn)練.知能訓(xùn)練設(shè)計(jì)算法判斷一元二次方程ax2+bx+c=0是否有實(shí)數(shù)根.解:算法步驟如下:第一步,輸入一元二次方程的系數(shù):a,b,c.第二步,計(jì)算Δ=b2-4ac的值.第三步,判斷Δ≥0是否成立.若Δ≥0成立,輸出“方程有實(shí)根”;否則輸出“方程無實(shí)根”,結(jié)束算法.點(diǎn)評:用算法解決問題的特點(diǎn)是:具有很好的程序性,是一種通法.并且具有確定性、邏輯性、有窮性.讓我們結(jié)合例題仔細(xì)體會算法的特點(diǎn).拓展提升中國網(wǎng)通規(guī)定:撥打市內(nèi)電話時(shí),如果不超過3分鐘,則收取話費(fèi)0.22元;如果通話時(shí)間超過3分鐘,則超出部分按每分鐘0.1元收取通話費(fèi),不足一分鐘按一分鐘計(jì)算.設(shè)通話時(shí)間為t(分鐘),通話費(fèi)用y(元),如何設(shè)計(jì)一個(gè)程序,計(jì)算通話的費(fèi)用.解:算法分析:數(shù)學(xué)模型實(shí)際上為:y關(guān)于t的分段函數(shù).關(guān)系式如下:y=其中[t-3]表示取不大于t-3的整數(shù)部分.算法步驟如下:第一步,輸入通話時(shí)間t.第二步,如果t≤3,那么y=0.22;否則判斷t∈Z是否成立,若成立執(zhí)行y=0.2+0.1×(t-3);否則執(zhí)行y=0.2+0.1×([t-3]+1).第三步,輸出通話費(fèi)用c.課堂小結(jié)(1)正確理解算法這一概念.(2)結(jié)合例題掌握算法的特點(diǎn),能夠?qū)懗龀R妴栴}的算法.作業(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ì)體會反復(fù)訓(xùn)練.本節(jié)的事例有古老的經(jīng)典算法,有幾何算法等,因此這是一節(jié)很好的課例.備課資料備用習(xí)題如果執(zhí)行下面的程序框圖,那么輸出的S等于()A.2450B.2500C.2550D.2652解析:此程序框圖表達(dá)的是求2+4+6+…+100的值的算法,因?yàn)镾==2550,所以輸出S=2550.答案:C1.1.2程序框圖與算法的基本邏輯結(jié)構(gòu)整體設(shè)計(jì)教學(xué)分析用自然語言表示的算法步驟有明確的順序性,但是對于在一定條件下才會被執(zhí)行的步驟,以及在一定條件下會被重復(fù)執(zhí)行的步驟,自然語言的表示就顯得困難,而且不直觀、不準(zhǔn)確.因此,本節(jié)有必要探究使算法表達(dá)得更加直觀、準(zhǔn)確的方法.程序框圖用圖形的方式表達(dá)算法,使算法的結(jié)構(gòu)更清楚、步驟更直觀也更精確.為了更好地學(xué)好程序框圖,我們需要掌握程序框的功能和作用,需要熟練掌握三種基本邏輯結(jié)構(gòu).三維目標(biāo)1.熟悉各種程序框及流程線的功能和作用.2.通過模仿、操作、探索,經(jīng)歷通過設(shè)計(jì)程序框圖表達(dá)解決問題的過程.在具體問題的解決過程中,理解程序框圖的三種基本邏輯結(jié)構(gòu):順序結(jié)構(gòu)、條件結(jié)構(gòu)、循環(huán)結(jié)構(gòu).3.通過比較體會程序框圖的直觀性、準(zhǔn)確性.重點(diǎn)難點(diǎn)數(shù)學(xué)重點(diǎn):程序框圖的畫法.數(shù)學(xué)難點(diǎn):程序框圖的畫法.課時(shí)安排4課時(shí)教學(xué)過程第1課時(shí)程序框圖及順序結(jié)構(gòu)導(dǎo)入新課思路1(情境導(dǎo)入)我們都喜歡外出旅游,優(yōu)美的風(fēng)景美不勝收,如果迷了路就不好玩了,問路有時(shí)還聽不明白,真是急死人,有的同學(xué)說買張旅游圖不就好了嗎,所以外出旅游先要準(zhǔn)備好旅游圖.旅游圖看起來直觀、準(zhǔn)確,本節(jié)將探究使算法表達(dá)得更加直觀、準(zhǔn)確的方法.今天我們開始學(xué)習(xí)程序框圖.思路2(直接導(dǎo)入)用自然語言表示的算法步驟有明確的順序性,但是對于在一定條件下才會被執(zhí)行的步驟,以及在一定條件下會被重復(fù)執(zhí)行的步驟,自然語言的表示就顯得困難,而且不直觀、不準(zhǔn)確.因此,本節(jié)有必要探究使算法表達(dá)得更加直觀、準(zhǔn)確的方法.今天開始學(xué)習(xí)程序框圖.推進(jìn)新課新知探究提出問題(1)什么是程序框圖?(2)說出終端框(起止框)的圖形符號與功能.(3)說出輸入、輸出框的圖形符號與功能.(4)說出處理框(執(zhí)行框)的圖形符號與功能.(5)說出判斷框的圖形符號與功能.(6)說出流程線的圖形符號與功能.(7)說出連接點(diǎn)的圖形符號與功能.(8)總結(jié)幾個(gè)基本的程序框、流程線和它們表示的功能.(9)什么是順序結(jié)構(gòu)?討論結(jié)果:(1)程序框圖又稱流程圖,是一種用程序框、流程線及文字說明來表示算法的圖形.在程序框圖中,一個(gè)或幾個(gè)程序框的組合表示算法中的一個(gè)步驟;帶有方向箭頭的流程線將程序框連接起來,表示算法步驟的執(zhí)行順序.(2)橢圓形框:表示程序的開始和結(jié)束,稱為終端框(起止框).表示開始時(shí)只有一個(gè)出口;表示結(jié)束時(shí)只有一個(gè)入口.(3)平行四邊形框:表示一個(gè)算法輸入和輸出的信息,又稱為輸入、輸出框,它有一個(gè)入口和一個(gè)出口.(4)矩形框:表示計(jì)算、賦值等處理操作,又稱為處理框(執(zhí)行框),它有一個(gè)入口和一個(gè)出口.(5)菱形框:是用來判斷給出的條件是否成立,根據(jù)判斷結(jié)果來決定程序的流向,稱為判斷框,它有一個(gè)入口和兩個(gè)出口.(6)流程線:表示程序的流向.(7)圓圈:連接點(diǎn).表示相關(guān)兩框的連接處,圓圈內(nèi)的數(shù)字相同的含義表示相連接在一起.(8)總結(jié)如下表.圖形符號名稱功能終端框(起止框)表示一個(gè)算法的起始和結(jié)束輸入、輸出框表示一個(gè)算法輸入和輸出的信息處理框(執(zhí)行框)賦值、計(jì)算判斷框判斷某一條件是否成立,成立時(shí)在出口處標(biāo)明“是”或“Y”;不成立時(shí)標(biāo)明“否”或“N”流程線連接程序框連接點(diǎn)連接程序框圖的兩部分(9)很明顯,順序結(jié)構(gòu)是由若干個(gè)依次執(zhí)行的步驟組成的,這是任何一個(gè)算法都離不開的基本結(jié)構(gòu).三種邏輯結(jié)構(gòu)可以用如下程序框圖表示:順序結(jié)構(gòu)條件結(jié)構(gòu)循環(huán)結(jié)構(gòu)應(yīng)用示例例1請用程序框圖表示前面講過的“判斷整數(shù)n(n>2)是否為質(zhì)數(shù)”的算法.解:程序框圖如下:點(diǎn)評:程序框圖是用圖形的方式表達(dá)算法,使算法的結(jié)構(gòu)更清楚,步驟更直觀也更精確.這里只是讓同學(xué)們初步了解程序框圖的特點(diǎn),感受它的優(yōu)點(diǎn),暫不要求掌握它的畫法.變式訓(xùn)練觀察下面的程序框圖,指出該算法解決的問題.解:這是一個(gè)累加求和問題,共99項(xiàng)相加,該算法是求的值.例2已知一個(gè)三角形三條邊的邊長分別為a,b,c,利用海倫—秦九韶公式設(shè)計(jì)一個(gè)計(jì)算三角形面積的算法,并畫出程序框圖表示.(已知三角形三邊邊長分別為a,b,c,則三角形的面積為S=),其中p=.這個(gè)公式被稱為海倫—秦九韶公式)算法分析:這是一個(gè)簡單的問題,只需先算出p的值,再將它代入分式,最后輸出結(jié)果.因此只用順序結(jié)構(gòu)應(yīng)能表達(dá)出算法.算法步驟如下:第一步,輸入三角形三條邊的邊長a,b,c.第二步,計(jì)算p=.第三步,計(jì)算S=.第四步,輸出S.程序框圖如下:點(diǎn)評:很明顯,順序結(jié)構(gòu)是由若干個(gè)依次執(zhí)行的步驟組成的,它是最簡單的邏輯結(jié)構(gòu),它是任何一個(gè)算法都離不開的基本結(jié)構(gòu).變式訓(xùn)練下圖所示的是一個(gè)算法的流程圖,已知a1=3,輸出的b=7,求a2的值.解:根據(jù)題意=7,∵a1=3,∴a2=11.即a2的值為11.例3寫出通過尺軌作圖確定線段AB的一個(gè)5等分點(diǎn)的程序框圖.解:利用我們學(xué)過的順序結(jié)構(gòu)得程序框圖如下:點(diǎn)評:這個(gè)算法步驟具有一般性,對于任意自然數(shù)n,都可以按照這個(gè)算法的思想,設(shè)計(jì)出確定線段的n等分點(diǎn)的步驟,解決問題,通過本題學(xué)習(xí)可以鞏固順序結(jié)構(gòu)的應(yīng)用.知能訓(xùn)練有關(guān)專家建議,在未來幾年內(nèi),中國的通貨膨脹率保持在3%左右,這將對我國經(jīng)濟(jì)的穩(wěn)定有利無害.所謂通貨膨脹率為3%,指的是每年消費(fèi)品的價(jià)格增長率為3%.在這種情況下,某種品牌的鋼琴2004年的價(jià)格是10000元,請用流程圖描述這種鋼琴今后四年的價(jià)格變化情況,并輸出四年后的價(jià)格.解:用P表示鋼琴的價(jià)格,不難看出如下算法步驟:2005年P(guān)=10000×(1+3%)=10300;2006年P(guān)=10300×(1+3%)=10609;2007年P(guān)=10609×(1+3%)=10927.27;2008年P(guān)=10927.27×(1+3%)=11255.09;因此,價(jià)格的變化情況表為:年份20042005200620072008鋼琴的價(jià)格10000103001060910927.2711255.09程序框圖如下:點(diǎn)評:順序結(jié)構(gòu)只需嚴(yán)格按照傳統(tǒng)的解決數(shù)學(xué)問題的解題思路,將問題解決掉.最后將解題步驟“細(xì)化”就可以.“細(xì)化”指的是寫出算法步驟、畫出程序框圖.拓展提升如下給出的是計(jì)算的值的一個(gè)流程圖,其中判斷框內(nèi)應(yīng)填入的條件是______________.答案:i>10.課堂小結(jié)(1)掌握程序框的畫法和功能.(2)了解什么是程序框圖,知道學(xué)習(xí)程序框圖的意義.(3)掌握順序結(jié)構(gòu)的應(yīng)用,并能解決與順序結(jié)構(gòu)有關(guān)的程序框圖的畫法.作業(yè)習(xí)題1.1A1.設(shè)計(jì)感想首先,本節(jié)的引入新穎獨(dú)特,旅游圖的故事闡明了學(xué)習(xí)程序框圖的意義.通過豐富有趣的事例讓學(xué)生了解了什么是程序框圖,進(jìn)而激發(fā)學(xué)生學(xué)習(xí)程序框圖的興趣.本節(jié)設(shè)計(jì)題目難度適中,逐步把學(xué)生帶入知識的殿堂,是一節(jié)好的課例.第2課時(shí)條件結(jié)構(gòu)導(dǎo)入新課思路1(情境導(dǎo)入)我們以前聽過這樣一個(gè)故事,野獸與鳥發(fā)生了一場戰(zhàn)爭,蝙蝠來了,野獸們喊道:你有牙齒是我們一伙的,鳥們喊道:你有翅膀是我們一伙的,蝙蝠一時(shí)沒了主意.過了一會兒蝙蝠有了一個(gè)好辦法,如果野獸贏了,就加入野獸這一伙,否則加入另一伙,事實(shí)上蝙蝠用了分類討論思想,在算法和程序框圖中也經(jīng)常用到這一思想方法,今天我們開始學(xué)習(xí)新的邏輯結(jié)構(gòu)——條件結(jié)構(gòu).思路2(直接導(dǎo)入)前面我們學(xué)習(xí)了順序結(jié)構(gòu),順序結(jié)構(gòu)像是一條沒有分支的河流,奔流到海不復(fù)回,事實(shí)上多數(shù)河流是有分支的,今天我們開始學(xué)習(xí)有分支的邏輯結(jié)構(gòu)——條件結(jié)構(gòu).推進(jìn)新課新知探究提出問題(1)舉例說明什么是分類討論思想?(2)什么是條件結(jié)構(gòu)?(3)試用程序框圖表示條件結(jié)構(gòu).(4)指出條件結(jié)構(gòu)的兩種形式的區(qū)別.討論結(jié)果:(1)例如解不等式ax>8(a≠0),不等式兩邊需要同除a,需要明確知道a的符號,但條件沒有給出,因此需要進(jìn)行分類討論,這就是分類討論思想.(2)在一個(gè)算法中,經(jīng)常會遇到一些條件的判斷,算法的流程根據(jù)條件是否成立有不同的流向.條件結(jié)構(gòu)就是處理這種過程的結(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í)行過程如下:條件成立,則執(zhí)行A框;不成立,則執(zhí)行B框.圖1圖2注:無論條件是否成立,只能執(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ù)為三邊邊長的三角形是否存在,并畫出這個(gè)算法的程序框圖.算法分析:判斷以3個(gè)任意給定的正實(shí)數(shù)為三條邊邊長的三角形是否存在,只需驗(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)評:根據(jù)構(gòu)成三角形的條件,判斷是否滿足任意兩邊之和大于第三邊,如果滿足則存在這樣的三角形,如果不滿足則不存在這樣的三角形.這種分類討論思想是高中的重點(diǎn),在畫程序框圖時(shí),常常遇到需要討論的問題,這時(shí)要用到條件結(jié)構(gòu).例2設(shè)計(jì)一個(gè)求解一元二次方程ax2+bx+c=0的算法,并畫出程序框圖表示.算法分析:我們知道,若判別式Δ=b2-4ac>0,則原方程有兩個(gè)不相等的實(shí)數(shù)根x1=,x2=;若Δ=0,則原方程有兩個(gè)相等的實(shí)數(shù)根x1=x2=;若Δ<0,則原方程沒有實(shí)數(shù)根.也就是說,在求解方程之前,可以先判斷判別式的符號,根據(jù)判斷的結(jié)果執(zhí)行不同的步驟,這個(gè)過程可以用條件結(jié)構(gòu)實(shí)現(xiàn).又因?yàn)榉匠痰膬蓚€(gè)根有相同的部分,為了避免重復(fù)計(jì)算,可以在計(jì)算x1和x2之前,先計(jì)算p=,q=.解決這一問題的算法步驟如下:第一步,輸入3個(gè)系數(shù)a,b,c.第二步,計(jì)算Δ=b2-4ac.第三步,判斷Δ≥0是否成立.若是,則計(jì)算p=,q=;否則,輸出“方程沒有實(shí)數(shù)根”,結(jié)束算法.第四步,判斷Δ=0是否成立.若是,則輸出x1=x2=p;否則,計(jì)算x1=p+q,x2=p-q,并輸出x1,x2.程序框圖如下:例3設(shè)計(jì)算法判斷一元二次方程ax2+bx+c=0是否有實(shí)數(shù)根,并畫出相應(yīng)的程序框圖.解:算法步驟如下:第一步,輸入3個(gè)系數(shù):a,b,c.第二步,計(jì)算Δ=b2-4ac.第三步,判斷Δ≥0是否成立.若是,則輸出“方程有實(shí)根”;否則,輸出“方程無實(shí)根”.結(jié)束算法.相應(yīng)的程序框圖如右:點(diǎn)評:根據(jù)一元二次方程的意義,需要計(jì)算判別式Δ=b2-4ac的值.再分成兩種情況處理:(1)當(dāng)Δ≥0時(shí),一元二次方程有實(shí)數(shù)根;(2)當(dāng)Δ<0時(shí),一元二次方程無實(shí)數(shù)根.該問題實(shí)際上是一個(gè)分類討論問題,根據(jù)一元二次方程系數(shù)的不同情況,最后結(jié)果就不同.因而當(dāng)給出一個(gè)一元二次方程時(shí),必須先確定判別式的值,然后再用判別式的值的取值情況確定方程是否有解.該例僅用順序結(jié)構(gòu)是辦不到的,要對判別式的值進(jìn)行判斷,需要用到條件結(jié)構(gòu).例4(1)設(shè)計(jì)算法,求ax+b=0的解,并畫出流程圖.解:對于方程ax+b=0來講,應(yīng)該分情況討論方程的解.我們要對一次項(xiàng)系數(shù)a和常數(shù)項(xiàng)b的取值情況進(jìn)行分類,分類如下:(1)當(dāng)a≠0時(shí),方程有唯一的實(shí)數(shù)解是;(2)當(dāng)a=0,b=0時(shí),全體實(shí)數(shù)都是方程的解;(3)當(dāng)a=0,b≠0時(shí),方程無解.聯(lián)想數(shù)學(xué)中的分類討論的處理方式,可得如下算法步驟:第一步,判斷a≠0是否成立.若成立,輸出結(jié)果“解為”.第二步,判斷a=0,b=0是否同時(shí)成立.若成立,輸出結(jié)果“解集為R”.第三步,判斷a=0,b≠0是否同時(shí)成立.若成立,輸出結(jié)果“方程無解”,結(jié)束算法.程序框圖如下:點(diǎn)評:這是條件結(jié)構(gòu)疊加問題,條件結(jié)構(gòu)疊加,程序執(zhí)行時(shí)需依次對“條件1”“條件2”“條件3”……都進(jìn)行判斷,只有遇到能滿足的條件才執(zhí)行該條件對應(yīng)的操作.知能訓(xùn)練設(shè)計(jì)算法,找出輸入的三個(gè)不相等實(shí)數(shù)a、b、c中的最大值,并畫出流程圖.解:算法步驟:第一步,輸入a,b,c的值.第二步,判斷a>b是否成立,若成立,則執(zhí)行第三步;否則執(zhí)行第四步.第三步,判斷a>c是否成立,若成立,則輸出a,并結(jié)束;否則輸出c,并結(jié)束.第四步,判斷b>c是否成立,若成立,則輸出b,并結(jié)束;否則輸出c,并結(jié)束.程序框圖如下:點(diǎn)評:條件結(jié)構(gòu)嵌套與條件結(jié)構(gòu)疊加的區(qū)別:(1)條件結(jié)構(gòu)疊加,程序執(zhí)行時(shí)需依次對“條件1”“條件2”“條件3”……都進(jìn)行判斷,只有遇到能滿足的條件才執(zhí)行該條件對應(yīng)的操作.(2)條件結(jié)構(gòu)的嵌套中,“條件2”是“條件1”的一個(gè)分支,“條件3”是“條件2”的一個(gè)分支……依此類推,這些條件中很多在算法執(zhí)行過程中根據(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ì)算:f=其中f(單位:元)為托運(yùn)費(fèi),ω為托運(yùn)物品的重量(單位:千克).試畫出計(jì)算費(fèi)用f的程序框圖.分析:這是一個(gè)實(shí)際問題,根據(jù)數(shù)學(xué)模型可知,求費(fèi)用f的計(jì)算公式隨物品重量ω的變化而有所不同,因此計(jì)算時(shí)先看物品的重量,在不同的條件下,執(zhí)行不同的指令,這是條件結(jié)構(gòu)的運(yùn)用,是二分支條件結(jié)構(gòu).其中,物品的重量通過輸入的方式給出.解:算法程序框圖如右圖:拓展提升有一城市,市區(qū)為半徑為15km的圓形區(qū)域,近郊區(qū)為距中心15—25km的范圍內(nèi)的環(huán)形地帶,距中心25km以外的為遠(yuǎn)郊區(qū),如右圖所示.市區(qū)地價(jià)每公頃100萬元,近郊區(qū)地價(jià)每公頃60萬元,遠(yuǎn)郊區(qū)地價(jià)為每公頃20分析:由該點(diǎn)坐標(biāo)(x,y),求其與市中心的距離r=,確定是市區(qū)、近郊區(qū),還是遠(yuǎn)郊區(qū),進(jìn)而確定地價(jià)p.由題意知,p=解:程序框圖如下:課堂小結(jié)(1)理解兩種條件結(jié)構(gòu)的特點(diǎn)和區(qū)別.(2)能用學(xué)過的兩種條件結(jié)構(gòu)解決常見的算法問題.作業(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),對于處理需要反復(fù)操作的事情有很大的優(yōu)勢.我們數(shù)學(xué)中有很多問題需要反復(fù)操作,今天我們學(xué)習(xí)能夠反復(fù)操作的邏輯結(jié)構(gòu)——循環(huán)結(jié)構(gòu).思路2(直接導(dǎo)入)前面我們學(xué)習(xí)了順序結(jié)構(gòu),順序結(jié)構(gòu)像一條沒有分支的河流,奔流到海不復(fù)回;上一節(jié)我們學(xué)習(xí)了條件結(jié)構(gòu),條件結(jié)構(gòu)像有分支的河流最后歸入大海;事實(shí)上很多水系是循環(huán)往復(fù)的,今天我們開始學(xué)習(xí)循環(huán)往復(fù)的邏輯結(jié)構(gòu)——循環(huán)結(jié)構(gòu).推進(jìn)新課新知探究提出問題(1)請大家舉出一些常見的需要反復(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)常會出現(xiàn)從某處開始,按照一定的條件反復(fù)執(zhí)行某些步驟的情況,這就是循環(huán)結(jié)構(gòu).反復(fù)執(zhí)行的步驟稱為循環(huán)體.(3)在一些算法中要求重復(fù)執(zhí)行同一操作的結(jié)構(gòu)稱為循環(huán)結(jié)構(gòu).即從算法某處開始,按照一定條件重復(fù)執(zhí)行某一處理的過程.重復(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í)行完畢后,返回來再判斷條件P是否成立,如果仍然成立,返回來再執(zhí)行A框,如此反復(fù)執(zhí)行A框,直到某一次返回來判斷條件P不成立時(shí)為止,此時(shí)不再執(zhí)行A框,離開循環(huán)結(jié)構(gòu).繼續(xù)執(zhí)行下面的框圖.2°直到型循環(huán)結(jié)構(gòu),如圖(2)所示,它的功能是先執(zhí)行重復(fù)執(zhí)行的A框,然后判斷給定的條件P是否成立,如果P仍然不成立,則返回來繼續(xù)執(zhí)行A框,再判斷條件P是否成立.繼續(xù)重復(fù)操作,直到某一次給定的判斷條件P時(shí)成立為止,此時(shí)不再返回來執(zhí)行A框,離開循環(huán)結(jié)構(gòu).繼續(xù)執(zhí)行下面的框圖.見示意圖:當(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)體,然后對條件進(jìn)行判斷,如果條件不滿足,就繼續(xù)執(zhí)行循環(huán)體,直到條件滿足時(shí)終止循環(huán).當(dāng)型循環(huán)結(jié)構(gòu)是在每次執(zhí)行循環(huán)體前,先對條件進(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的值的算法,并畫出程序框圖.算法分析:通常,我們按照下列過程計(jì)算1+2+……+100的值.第1步,0+1=1.第2步,1+2=3.第3步,3+3=6.第4步,6+4=10.……第100步,4950+100=5050.顯然,這個(gè)過程中包含重復(fù)操作的步驟,可以用循環(huán)結(jié)構(gòu)表示.分析上述計(jì)算過程,可以發(fā)現(xiàn)每一步都可以表示為第(i-1)步的結(jié)果+i=第i步的結(jié)果.為了方便、有效地表示上述過程,我們用一個(gè)累加變量S來表示第一步的計(jì)算結(jié)果,即把S+i的結(jié)果仍記為S,從而把第i步表示為S=S+i,其中S的初始值為0,i依次取1,2,…,100,由于i同時(shí)記錄了循環(huán)的次數(shù),所以也稱為計(jì)數(shù)變量.解決這一問題的算法是:第一步,令i=1,S=0.第二步,若i≤100成立,則執(zhí)行第三步;否則,輸出S,結(jié)束算法.第三步,S=S+i.第四步,i=i+1,返回第二步.程序框圖如右:上述程序框圖用的是當(dāng)型循環(huán)結(jié)構(gòu),如果用直到型循環(huán)結(jié)構(gòu)表示,則程序框圖如下:點(diǎn)評:這是一個(gè)典型的用循環(huán)結(jié)構(gòu)解決求和的問題,有典型的代表意義,可把它作為一個(gè)范例,仔細(xì)體會三種邏輯結(jié)構(gòu)在程序框圖中的作用,學(xué)會畫程序框圖.變式訓(xùn)練已知有一列數(shù),設(shè)計(jì)框圖實(shí)現(xiàn)求該列數(shù)前20項(xiàng)的和.分析:該列數(shù)中每一項(xiàng)的分母是分子數(shù)加1,單獨(dú)觀察分子,恰好是1,2,3,4,…,n,因此可用循環(huán)結(jié)構(gòu)實(shí)現(xiàn),設(shè)計(jì)數(shù)器i,用i=i+1實(shí)現(xiàn)分子,設(shè)累加器S,用S=,可實(shí)現(xiàn)累加,注意i只能加到20.解:程序框圖如下:方法一:方法二:點(diǎn)評:在數(shù)學(xué)計(jì)算中,i=i+1不成立,S=S+i只有在i=0時(shí)才能成立.在計(jì)算機(jī)程序中,它們被賦予了其他的功能,不再是數(shù)學(xué)中的“相等”關(guān)系,而是賦值關(guān)系.變量i用來作計(jì)數(shù)器,i=i+1的含義是:將變量i的值加1,然后把計(jì)算結(jié)果再存貯到變量i中,即計(jì)數(shù)器i在原值的基礎(chǔ)上又增加了1.變量S作為累加器,來計(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萬元,技術(shù)革新后預(yù)計(jì)以后每年的年生產(chǎn)總值都比上一年增長5%,設(shè)計(jì)一個(gè)程序框圖,輸出預(yù)計(jì)年生產(chǎn)總值超過300萬元的最早年份.算法分析:先寫出解決本例的算法步驟:第一步,輸入2005年的年生產(chǎn)總值.第二步,計(jì)算下一年的年生產(chǎn)總值.第三步,判斷所得的結(jié)果是否大于300,若是,則輸出該年的年份,算法結(jié)束;否則,返回第二步.由于“第二步”是重復(fù)操作的步驟,所以本例可以用循環(huán)結(jié)構(gòu)來實(shí)現(xiàn).我們按照“確定循環(huán)體”“初始化變量”“設(shè)定循環(huán)控制條件”的順序來構(gòu)造循環(huán)結(jié)構(gòu).(1)確定循環(huán)體:設(shè)a為某年的年生產(chǎn)總值,t為年生產(chǎn)總值的年增長量,n為年份,則循環(huán)體為t=0.05a,a=a+t,n=n+1.(2)初始化變量:若將2005年的年生產(chǎn)總值看成計(jì)算的起始點(diǎn),則n的初始值為2005,a的初始值為200.(3)設(shè)定循環(huán)控制條件:當(dāng)“年生產(chǎn)總值超過300萬元”時(shí)終止循環(huán),所以可通過判斷“a>300”是否成立來控制循環(huán).程序框圖如下:思路2例1設(shè)計(jì)框圖實(shí)現(xiàn)1+3+5+7+…+131的算法.分析:由于需加的數(shù)較多,所以要引入循環(huán)結(jié)構(gòu)來實(shí)現(xiàn)累加.觀察所加的數(shù)是一組有規(guī)律的數(shù)(每相臨兩數(shù)相差2),那么可考慮在循環(huán)過程中,設(shè)一個(gè)變量i,用i=i+2來實(shí)現(xiàn)這些有規(guī)律的數(shù),設(shè)一個(gè)累加器sum,用來實(shí)現(xiàn)數(shù)的累加,在執(zhí)行時(shí),每循環(huán)一次,就產(chǎn)生一個(gè)需加的數(shù),然后加到累加器sum中.解:算法如下:第一步,賦初值i=1,sum=0.第二步,sum=sum+i,i=i+2.第三步,如果i≤131,則反復(fù)執(zhí)第二步;否則,執(zhí)行下一步.第四步,輸出sum.第五步,結(jié)束.程序框圖如右圖.點(diǎn)評:(1)設(shè)計(jì)流程圖要分步進(jìn)行,把一個(gè)大的流程圖分割成幾個(gè)小的部分,按照三個(gè)基本結(jié)構(gòu)即順序、條件、循環(huán)結(jié)構(gòu)來局部安排,然后把流程圖進(jìn)行整合.(2)框圖畫完后,要進(jìn)行驗(yàn)證,按設(shè)計(jì)的流程分析是否能實(shí)現(xiàn)所求的數(shù)的累加,分析條件是否加到131就結(jié)束循環(huán),所以我們要注意初始值的設(shè)置、循環(huán)條件的確定以及循環(huán)體內(nèi)語句的先后順序,三者要有機(jī)地結(jié)合起來.最關(guān)鍵的是循環(huán)條件,它決定循環(huán)次數(shù),可以想一想,為什么條件不是“i<131”或“i=131”,如果是“i<131”,那么會少執(zhí)行一次循環(huán),131就加不上了.例2高中某班一共有40名學(xué)生,設(shè)計(jì)算法流程圖,統(tǒng)計(jì)班級數(shù)學(xué)成績良好(分?jǐn)?shù)>80)和優(yōu)秀(分?jǐn)?shù)>90)的人數(shù).分析:用循環(huán)結(jié)構(gòu)實(shí)現(xiàn)40個(gè)成績的輸入,每循環(huán)一次就輸入一個(gè)成績s,然后對s的值進(jìn)行判斷.設(shè)兩個(gè)計(jì)數(shù)器m,n,如果s>90,則m=m+1,如果80<s≤90,則n=n+1.設(shè)計(jì)數(shù)器i,用來控制40個(gè)成績的輸入,注意循環(huán)條件的確定.解:程序框圖如下圖:知能訓(xùn)練由相應(yīng)的程序框圖如右圖,補(bǔ)充完整一個(gè)計(jì)算1+2+3+…+100的值的算法.(用循環(huán)結(jié)構(gòu))第一步,設(shè)i的值為_____________.第二步,設(shè)sum的值為_____________.第三步,如果i≤100執(zhí)行第_____________步,否則,轉(zhuǎn)去執(zhí)行第_____________步.第四步,計(jì)算sum+i并將結(jié)果代替_____________.第五步,計(jì)算_____________并將結(jié)果代替i.第六步,轉(zhuǎn)去執(zhí)行第三步.第七步,輸出sum的值并結(jié)束算法.分析:流程圖各圖框的內(nèi)容(語言和符號)要與算法步驟相對應(yīng),在流程圖中算法執(zhí)行的順序應(yīng)按箭頭方向進(jìn)行.解:第一步,設(shè)i的值為1.第二步,設(shè)sum的值為0.第三步,如果i≤100,執(zhí)行第四步,否則,轉(zhuǎn)去執(zhí)行第七步.第四步,計(jì)算sum+i并將結(jié)果代替sum.第五步,計(jì)算i+1并將結(jié)果代替i.第六步,轉(zhuǎn)去執(zhí)行第三步.第七步,輸出sum的值并結(jié)束算法.拓展提升設(shè)計(jì)一個(gè)算法,求1+2+4+…+249的值,并畫出程序框圖.解:算法步驟:第一步,sum=0.第二步,i=0.第三步,sum=sum+2i.第四步,i=i+1.第五步,判斷i是否大于49,若成立,則輸出sum,結(jié)束.否則,返回第三步重新執(zhí)行.程序框圖如右圖:點(diǎn)評:(1)如果算法問題里涉及的運(yùn)算進(jìn)行了許多次重復(fù)的操作,且先后參與運(yùn)算的數(shù)之間有相同的規(guī)律,就可引入變量循環(huán)參與運(yùn)算(我們稱之為循環(huán)變量),應(yīng)用于循環(huán)結(jié)構(gòu).在循環(huán)結(jié)構(gòu)中,要注意根據(jù)條件設(shè)計(jì)合理的計(jì)數(shù)變量、累加和累乘變量及其個(gè)數(shù)等,特別要求條件的表述要恰當(dāng)、精確.(2)累加變量的初始值一般取0,而累乘變量的初始值一般取1.課堂小結(jié)(1)熟練掌握兩種循環(huán)結(jié)構(gòu)的特點(diǎn)及功能.(2)能用兩種循環(huán)結(jié)構(gòu)畫出求和等實(shí)際問題的程序框圖,進(jìn)一步理解學(xué)習(xí)算法的意義.作業(yè)習(xí)題1.1A組2.設(shè)計(jì)感想本節(jié)的引入抓住了本節(jié)的特點(diǎn),利用計(jì)算機(jī)進(jìn)行循環(huán)往復(fù)運(yùn)算,解決累加、累乘等問題.循環(huán)結(jié)構(gòu)是邏輯結(jié)構(gòu)中的難點(diǎn),它一定包含一個(gè)條件結(jié)構(gòu),它能解決很多有趣的問題.本節(jié)選用了大量精彩的例題,對我們系統(tǒng)掌握程序框圖有很大的幫助.第4課時(shí)程序框圖的畫法導(dǎo)入新課思路1(情境導(dǎo)入)一條河流有時(shí)像順序結(jié)構(gòu),奔流到海不復(fù)回;有時(shí)像條件結(jié)構(gòu)分分合合向前進(jìn);有時(shí)像循環(huán)結(jié)構(gòu),雖有反復(fù)但最后流入大海.一個(gè)程序框圖就像一條河流包含三種邏輯結(jié)構(gòu),今天我們系統(tǒng)學(xué)習(xí)程序框圖的畫法.思路2(直接導(dǎo)入)前面我們學(xué)習(xí)了順序結(jié)構(gòu)、條件結(jié)構(gòu)、循環(huán)結(jié)構(gòu),今天我們系統(tǒng)學(xué)習(xí)程序框圖的畫法.推進(jìn)新課新知探究提出問題(1)請大家回憶順序結(jié)構(gòu),并用程序框圖表示.(2)請大家回憶條件結(jié)構(gòu),并用程序框圖表示.(3)請大家回憶循環(huán)結(jié)構(gòu),并用程序框圖表示.(4)總結(jié)畫程序框圖的基本步驟.討論結(jié)果:(1)順序結(jié)構(gòu)是由若干個(gè)依次執(zhí)行的步驟組成的,這是任何一個(gè)算法都離不開的基本結(jié)構(gòu).框圖略.(2)在一個(gè)算法中,經(jīng)常會遇到一些條件的判斷,算法的流程根據(jù)條件是否成立有不同的流向.條件結(jié)構(gòu)就是處理這種過程的結(jié)構(gòu).框圖略.(3)在一些算法中要求重復(fù)執(zhí)行同一操作的結(jié)構(gòu)稱為循環(huán)結(jié)構(gòu).即從算法某處開始,按照一定條件重復(fù)執(zhí)行某一處理過程.重復(fù)執(zhí)行的處理步驟稱為循環(huán)體.循環(huán)結(jié)構(gòu)有兩種形式:當(dāng)型循環(huán)結(jié)構(gòu)和直到型循環(huán)結(jié)構(gòu).框圖略.(4)從前面的學(xué)習(xí)可以看出,設(shè)計(jì)一個(gè)算法的程序框圖通常要經(jīng)過以下步驟:第一步,用自然語言表達(dá)算法步驟.第二步,確定每一個(gè)算法步驟所包含的邏輯結(jié)構(gòu),并用相應(yīng)的程序框表示,得到該步驟的程序框圖.第三步,將所有步驟的程序框圖用流程線連接起來,并加上終端框,得到表示整個(gè)算法的程序框圖.應(yīng)用示例例1結(jié)合前面學(xué)過的算法步驟,利用三種基本邏輯結(jié)構(gòu)畫出程序框圖,表示用“二分法”求方程x2-2=0(x>0)的近似解的算法.算法分析:(1)算法步驟中的“第一步”“第二步”和“第三步”可以用順序結(jié)構(gòu)來表示(如下圖):(2)算法步驟中的“第四步”可以用條件結(jié)構(gòu)來表示(如下圖).在這個(gè)條件結(jié)構(gòu)中,“否”分支用“a=m”表示含零點(diǎn)的區(qū)間為[m,b],并把這個(gè)區(qū)間仍記成[a,b];“是”分支用“b=m”表示含零點(diǎn)的區(qū)間為[a,m],同樣把這個(gè)區(qū)間仍記成[a,b].(3)算法步驟中的“第五步”包含一個(gè)條件結(jié)構(gòu),這個(gè)條件結(jié)構(gòu)與“第三步”“第四步”構(gòu)成一個(gè)循環(huán)結(jié)構(gòu),循環(huán)體由“第三步”和“第四步”組成,終止循環(huán)的條件是“|a-b|<d或f(m)=0”.在“第五步”中,還包含由循環(huán)結(jié)構(gòu)與“輸出m”組成的順序結(jié)構(gòu)(如下圖).(4)將各步驟的程序框圖連接起來,并畫出“開始”與“結(jié)束”兩個(gè)終端框,就得到了表示整個(gè)算法的程序框圖(如下圖).點(diǎn)評:在用自然語言表述一個(gè)算法后,可以畫出程序框圖,用順序結(jié)構(gòu)、條件結(jié)構(gòu)和循環(huán)結(jié)構(gòu)來表示這個(gè)算法,這樣表示的算法清楚、簡練,便于閱讀和交流.例2相傳古代的印度國王要獎(jiǎng)賞國際象棋的發(fā)明者,問他需要什么.發(fā)明者說:陛下,在國際象棋的第一個(gè)格子里面放1粒麥子,在第二個(gè)格子里面放2粒麥子,第三個(gè)格子放4粒麥子,以后每個(gè)格子中的麥粒數(shù)都是它前一個(gè)格子中麥粒數(shù)的二倍,依此類推(國際象棋棋盤共有64個(gè)格子),請將這些麥子賞給我,我將感激不盡.國王想這還不容易,就讓人扛了一袋小麥,但不到一會兒就沒了,最后一算結(jié)果,全印度一年生產(chǎn)的糧食也不夠.國王很奇怪,小小的“棋盤”,不足100個(gè)格子,如此計(jì)算怎么能放這么多麥子?試用程序框圖表示此算法過程.解:將實(shí)際問題轉(zhuǎn)化為數(shù)學(xué)模型,該問題就是要求1+2+4+……+263的和.程序框圖如下:點(diǎn)評:對于開放式探究問題,我們可以建立數(shù)學(xué)模型(上面的題目可以與等比數(shù)列的定義、性質(zhì)和公式聯(lián)系起來)和過程模型來分析算法,通過設(shè)計(jì)算法以及語言的描述選擇一些成熟的辦法進(jìn)行處理.例3乘坐火車時(shí),可以托運(yùn)貨物.從甲地到乙地,規(guī)定每張火車客票托運(yùn)費(fèi)計(jì)算方法是:行李質(zhì)量不超過50kg時(shí)按0.25元/kg;超過50kg而不超過100kg時(shí),其超過部分按0.35元/kg;超過100kg時(shí),其超過部分按0.45元/kg分析:本題主要考查條件語句及其應(yīng)用.先解決數(shù)學(xué)問題,列出托運(yùn)的費(fèi)用關(guān)于行李質(zhì)量的函數(shù)關(guān)系式.設(shè)行李質(zhì)量為xkg,應(yīng)付運(yùn)費(fèi)為y元,則運(yùn)費(fèi)公式為:y=整理得y=要計(jì)算托運(yùn)的費(fèi)用必須對行李質(zhì)量分類討論,因此要用條件語句來實(shí)現(xiàn).解:算法分析:第一步,輸入行李質(zhì)量x.第二步,當(dāng)x≤50時(shí),計(jì)算y=0.25x,否則,執(zhí)行下一步.第三步,當(dāng)x≤100,計(jì)算y=0.35x-5,否則,計(jì)算y=0.45x-15.第四步,輸出y.程序框圖如下:知能訓(xùn)練設(shè)計(jì)一個(gè)用有理數(shù)數(shù)冪逼近無理指數(shù)冪的算法,畫出算法的程序框圖.解:算法步驟:第一步,給定精確度d,令i=1.第二步,取出的到小數(shù)點(diǎn)后第i位的不足近似值,記為a;取出的到小數(shù)點(diǎn)后第i位的過剩近似值,記為b.第三步,計(jì)算m=5b-5a第四步,若m<d,則得到的近似值為5a;否則,將i的值增加1,返回第二步.第五步,得到的近似值為5a.程序框圖如下:拓展提升求,畫出程序框圖.分析:如果采用逐步計(jì)算的方法,利用順序結(jié)構(gòu)來實(shí)現(xiàn),則非常麻煩,由于前后的運(yùn)算需重復(fù)多次相同的運(yùn)算,所以應(yīng)采用循環(huán)結(jié)構(gòu),可用循環(huán)結(jié)構(gòu)來實(shí)現(xiàn)其中的規(guī)律.觀察原式中的變化的部分及不變項(xiàng),找出總體的規(guī)律是4+,要實(shí)現(xiàn)這個(gè)規(guī)律,需設(shè)初值x=4.解:程序框圖如下:課堂小節(jié)(1)進(jìn)一步熟悉三種邏輯結(jié)構(gòu)的應(yīng)用,理解算法與程序框圖的關(guān)系.(2)根據(jù)算法步驟畫出程序框圖.作業(yè)習(xí)題1.1B組1、2.設(shè)計(jì)感想本節(jié)是前面內(nèi)容的概括和總結(jié),在回憶前面內(nèi)容的基礎(chǔ)上,選擇經(jīng)典的例題,進(jìn)行了詳盡的剖析,這樣降低了學(xué)生學(xué)習(xí)的難度.另外,本節(jié)的練習(xí)難度適中,并且多為學(xué)生感興趣的問題,這樣為學(xué)生學(xué)好本節(jié)內(nèi)容作好充分準(zhǔn)備,希望大家喜歡這一節(jié)課.備課資料下列語句執(zhí)行完后,A、B的值各為:________________.A=2B=3B=A*AA=A+BB=A+B解析:此題考查對賦值語句的掌握,只要對賦值語句的功能搞清楚,不難得出答案.∵A=2,B=A2,即B=4,∴A=A+B,即A=2+4=6,∴B=A+B即B=6+4=10.答案:6,101.2基本算法語句1.2.1輸入語句、輸出語句和賦值語句整體設(shè)計(jì)教學(xué)分析通過上一節(jié)的學(xué)習(xí),學(xué)生了解了算法的含義,學(xué)習(xí)了用算法步驟和程序框圖表示算法的方法,本節(jié)介紹用程序設(shè)計(jì)語言表示算法的方法.算法步驟和程序框圖表示的算法,計(jì)算機(jī)是不能理解的,程序是算法的精確形式,是計(jì)算機(jī)可以理解的算法.本節(jié)的教學(xué)重點(diǎn)是通過實(shí)例使學(xué)生理解三種基本算法語句的結(jié)構(gòu)和用法,并在此基礎(chǔ)上編寫由算法語句組成的程序,從而更細(xì)致地刻畫算法,進(jìn)一步體會算法的基本思想.三維目標(biāo)1.理解學(xué)習(xí)基本算法語句的意義.2.學(xué)會輸入語句、輸出語句和賦值語句的基本用法.3.理解算法步驟、程序框圖和算法語句的關(guān)系,學(xué)會算法語句的寫法.重點(diǎn)難點(diǎn)教學(xué)重點(diǎn):輸入語句、輸出語句和賦值語句的基本用法.教學(xué)難點(diǎn):算法語句的寫法.課時(shí)安排1課時(shí)教學(xué)過程導(dǎo)入新課思路1(情境導(dǎo)入)中國足球隊(duì)在亞洲杯上的失利說明,中國足球仍然需要請外國教練.高水平的外國教練有先進(jìn)的足球理念,有系統(tǒng)科學(xué)的訓(xùn)練計(jì)劃,有先進(jìn)的足球技術(shù),但由于語言不通不能直接傳授給隊(duì)員.算法步驟、程序框圖雖然容易掌握,但計(jì)算機(jī)不能理解,因此我們需要學(xué)習(xí)算法語句.思路2(直接導(dǎo)入)前面我們學(xué)習(xí)了程序框圖的畫法,為了讓計(jì)算機(jī)能夠理解算法步驟、程序框圖,我們開始學(xué)習(xí)算法語句.推進(jìn)新課新知探究提出問題(1)指出輸入語句的格式、功能、要求.(2)指出輸出語句的格式、功能、要求.(3)指出賦值語句的格式、功能、要求.(4)利用框圖總結(jié)三種語句的功能、格式、特點(diǎn).(5)指出三種語句與框圖的對應(yīng)關(guān)系.討論結(jié)果:(1)輸入語句的格式:INPUT“提示內(nèi)容”;變量例如:INPUT“x=”;x功能:實(shí)現(xiàn)算法的輸入變量信息(數(shù)值或字符)的功能.要求:1°輸入語句要求輸入的值是具體的常量.2°提示內(nèi)容提示用戶輸入的是什么信息,必須加雙引號,提示內(nèi)容“原原本本”的在計(jì)算機(jī)屏幕上顯示,提示內(nèi)容與變量之間要用分號隔開.3°一個(gè)輸入語句可以給多個(gè)變量賦值,中間用“,”分隔.形式如:INPUT“a=,b=,c=,”;a,b,c(2)輸出語句的一般格式:PRINT“提示內(nèi)容”;表達(dá)式例如:PRINT“S=”;S功能:實(shí)現(xiàn)算法輸出信息(表達(dá)式)的功能.要求:1°表達(dá)式是指算法和程序要求輸出的信息.2°提示內(nèi)容提示用戶要輸出的是什么信息,提示內(nèi)容必須加雙引號,提示內(nèi)容要用分號和表達(dá)式分開.3°如同輸入語句一樣,輸出語句可以一次完成輸出多個(gè)表達(dá)式的功能,不同的表達(dá)式之間可用“,”分隔.形式如:PRINT“a,b,c:”;a,b,c(3)賦值語句的一般格式:變量=表達(dá)式.賦值語句中的“=”稱作賦值號.功能:將表達(dá)式所代表的值賦給變量.要求:1°賦值語句左邊只能是變量名字,而不是表達(dá)式,右邊表達(dá)式可以是一個(gè)常量、變量或含變量的運(yùn)算式.如:2=x是錯(cuò)誤的.2°賦值號的左右兩邊不能對換.賦值語句是將賦值號右邊的表達(dá)式的值賦給賦值號左邊的變量.如“A=B”“B=A”的含義運(yùn)行結(jié)果是不同的,如x=5是對的,5=x是錯(cuò)的,A+B=C是錯(cuò)的,C=A+B是對的.3°不能利用賦值語句進(jìn)行代數(shù)式的演算(如化簡、因式分解、解方程等),如y=x2-1=(x-1)(x+1),這是實(shí)現(xiàn)不了的.在賦值號右邊表達(dá)式中每一個(gè)變量的值必須事先賦給確定的值.在一個(gè)賦值語句中只能給一個(gè)變量賦值,不能出現(xiàn)兩個(gè)或以上的“=”.但對于同一個(gè)變量可以多次賦值.(4)三種語句的功能、格式、特點(diǎn)如下:在QBASIC語言中,輸入語句是INPUT語句,輸出語句是PRINT語句,賦值語句是LET語句(“LET”可以省略).下表列出了這三種語句的一般格式、主要功能和相關(guān)說明,供教師教學(xué)時(shí)參考,不要求學(xué)生掌握.INPUT語句PRINT語句賦值語句格式INPUT“提示內(nèi)容”;變量PRINT“提示內(nèi)容”;表達(dá)式LET變量=表達(dá)式功能可對程序中的變量賦值可輸出表達(dá)式的值,計(jì)算可對程序中的變量賦值,計(jì)算說明①又稱“鍵盤輸入語句”,在程序運(yùn)行過程中,停機(jī)等候用戶由鍵盤輸入數(shù)據(jù),而不需要在寫程序時(shí)指定②“提示內(nèi)容”和它后面的“;”可以省略③一個(gè)語句可以給多個(gè)變量賦值,中間用“,”分隔④無計(jì)算功能⑤用戶由鍵盤輸入的數(shù)據(jù)必須是常量,輸入多個(gè)數(shù)據(jù)時(shí)用“,”分隔,且個(gè)數(shù)要與變量的個(gè)數(shù)相同①又稱“打印語句”,將表達(dá)式的值在屏幕上顯示出來②表達(dá)式可以是變量、計(jì)算公式或系統(tǒng)信息③一個(gè)語句可以輸出多個(gè)表達(dá)式.不同的表達(dá)式之間可用“,”分隔④有計(jì)算功能,能直接輸出計(jì)算公式的值①在程序運(yùn)行過程中給變量賦值②“LET”可以省略,“=”的右側(cè)必須是表達(dá)式,左側(cè)必須是變量③一個(gè)語句只能給一個(gè)變量賦值④有計(jì)算功能⑤將一個(gè)變量的值賦給另一個(gè)變量,前一個(gè)變量的值保持不變;可先后給一個(gè)變量賦多個(gè)不同的值,但變量的取值總是最后被賦予的值(5)指出三種語句與框圖的對應(yīng)關(guān)系如下圖.應(yīng)用示例思路1例1用描點(diǎn)法作函數(shù)y=x3+3x2-24x+30的圖象時(shí),需要求出自變量和函數(shù)的一組對應(yīng)值.編寫程序,分別計(jì)算當(dāng)x=-5,-4,-3,-2,-1,0,1,2,3,4,5時(shí)的函數(shù)值.算法分析:根據(jù)題意,對于每一個(gè)輸入的自變量的值,都要輸出相應(yīng)的函數(shù)值.寫成算法步驟如下:第一步,輸入一個(gè)自變量的x的值.第二步,計(jì)算y=x3+3x2-24x+30.第三步,輸出y.程序框圖如下圖:顯然,這是一個(gè)由順序結(jié)構(gòu)構(gòu)成的算法,按照程序框圖中流程線的方向,依次將程序框中的內(nèi)容寫成相應(yīng)的算法語句,就得相應(yīng)的程序.解:程序:INPUT“x”;xy=x^3+3*x^2-24*x+30PRINTyEND點(diǎn)評:前面我們學(xué)習(xí)了算法步驟、程序框圖,我們對照程序框圖與算法語句可以得到它們之間的對應(yīng)關(guān)系.例如:在這個(gè)程序中,第1行中的INPUT語句就是輸入語句.這個(gè)語句的一般格式是INPUT“提示內(nèi)容”;變量其中,“提示內(nèi)容”一般是提示用戶輸入什么樣的信息,每次運(yùn)行例1中的程序時(shí),依次輸入-5,-4,-3,-2,-1,0,1,2,3,4,5,計(jì)算機(jī)每次都把新輸入的值賦給變量“x”,并按“x”新獲得的值計(jì)算變量“y”的值.例2給一個(gè)變量重復(fù)賦值.解:程序:A=10A=A+15PRINTAEND點(diǎn)評:給一個(gè)變量重復(fù)賦值,變量只保存最后一次賦值,比如此程序的輸出值是25.例3編寫程序,計(jì)算一個(gè)學(xué)生數(shù)學(xué)、語文、英語三門課的平均成績.算法分析:先寫出解決本例的算法步驟:第一步,輸入該學(xué)生數(shù)學(xué)、語文、英語三門課的成績a,b,c.第二步,計(jì)算y=.第三步,輸出y.程序框圖如下:由于PRINT語句還可以用于輸出數(shù)值計(jì)算的結(jié)果,所以這個(gè)算法可以寫成下列程序.程序:INPUT“Maths=”;aINPUT“Chinese=”;bINPUT“English=”;cPRINT“Theaverage=”;(a+b+c)/3END點(diǎn)評:例3中的第4行的PRINT語句是輸出語句,它的一般形式是PRINT“提示內(nèi)容”;表達(dá)式PRINT語句可以在計(jì)算機(jī)的屏幕上輸出常量、變量的值和系統(tǒng)信息,同輸入語句一樣,這里的表達(dá)式前也可以有“提示內(nèi)容”.例4變換兩個(gè)變量A和B的值,并輸出交換前后的值.解:程序:INPUTA,BPRINTA,Bx=AA=BB=xPRINTA,BEND思路2例1寫出求三個(gè)數(shù)a,b,c的方差的程序.分析:方差是在初中統(tǒng)計(jì)內(nèi)容中學(xué)習(xí)過的知識,計(jì)算所有數(shù)的方差首先計(jì)算所有數(shù)的平均數(shù),通過公式s2=來計(jì)算.算法步驟:第一步,計(jì)算平均數(shù).第二步,計(jì)算方差s2=.第三步,得到的結(jié)果即為所求.程序如下:INPUTa,b,cy=(a+b+c)/3S=((a-y)2+(b-y)2+(c-y)2)/3PRINTSEND點(diǎn)評:套用公式求值問題是傳統(tǒng)數(shù)學(xué)求值問題的一種,它是一種典型的順序結(jié)構(gòu),也就是說只通過輸入、輸出和賦值語句就可以完成任務(wù).解決這類問題的關(guān)鍵是先分析這種問題的解法,即構(gòu)造計(jì)算的過程,再寫出算法步驟和流程圖,再翻譯成算法語句即可.例2編寫一個(gè)程序,要求輸入兩個(gè)正數(shù)a和b的值,輸出ab和ba的值.分析:可以利用INPUT語句輸入兩個(gè)正數(shù),然后將ab和ba的值分別賦給兩個(gè)變量輸出即可.也可以將ab和ba的底數(shù)和冪數(shù)進(jìn)行交換,故還可以利用賦值語句,采用將兩個(gè)變量的值互換的辦法實(shí)現(xiàn).解:程序1:INPUT“a,b:”;a,bA=a^bB=b^aPRINT“a^b=”;A,“b^a=”;BEND程序2:INPUT“a,b:”;a,bA=a^bPRINT“a^b=”;Ax=aa=bb=xA=a^bPRINT“b^a=”;AEND點(diǎn)評:交換a,b的值可通過下面三個(gè)語句來實(shí)現(xiàn):t=aa=bb=t通過引進(jìn)一個(gè)中間變量t實(shí)現(xiàn)變量a和b的值的交換,因此只需用賦值語句即可實(shí)現(xiàn)算法.在一些較為復(fù)雜的問題算法中經(jīng)常需要對兩個(gè)變量的值進(jìn)行交換,因此應(yīng)熟練掌握這種方法.知能訓(xùn)練1.判斷下列給出的輸入語句、輸出語句和賦值語句是否正確?為什么?(1)輸入語句INPUTa;b;c(2)輸出語句A=4(3)賦值語句3=B(4)賦值語句A=B=-2解:(1)錯(cuò),變量之間應(yīng)用“,”號隔開.(2)錯(cuò),PRINT語句不能用賦值號“=”.(3)錯(cuò),賦值語句中“=”號左右不能互換.(4)錯(cuò),一個(gè)賦值語句只能給一個(gè)變量賦值.點(diǎn)評:輸入語句、輸出語句和賦值語句基本上對應(yīng)于算法中的順序結(jié)構(gòu).輸入語句、輸出語句和賦值語句都不包括“控制轉(zhuǎn)移”,由它們組成的程序段必然是順序結(jié)構(gòu).2.請寫出下面運(yùn)算輸出的結(jié)果.(1)a=5b=3c=(a+b)/2d=c*cPRINT“d=”;d(2)a=1b=2c=a+bb=a+c-bPRINT“a=,b=,c=”;a,b,c(3)a=10b=20c=30a=bb=cc=aPRINT“a=,b=,c=”;a,b,c解:(1)16;語句c=(a+b)/2是將a,b和的一半賦值給變量c,語句d=c*c是將c的平方賦值給d,最后輸出d的值.(2)1,2,3;語句c=a+b是將a,b的和賦值給c,語句b=a+c-b是將a+c-b的值賦值給了b.(3)20,30,20;經(jīng)過語句a=b后a,b,c的值是20,20,30.經(jīng)過語句b=c后a,b,c的值是20,30,30.經(jīng)過語句c=a后a,b,c的值是20,30,20.點(diǎn)評:語句的識別問題是一個(gè)逆向性思維,一般我們認(rèn)為我們的學(xué)習(xí)是從算法步驟(自然語言)至程序框圖,再到算法語言(程序).如果將程序擺在我們的面前時(shí),我們要先識別每個(gè)語句,再整體把握并概括出程序的功能.拓展提升已知某生某三科的成績?yōu)?0、75、95分,求三科的總分及平均分.分析:將三科成績賦給三個(gè)變量A,B,C,然后對三個(gè)變量進(jìn)行操作、運(yùn)算,求其總分、平均分.變量的起名規(guī)則:由字母、數(shù)字、下劃線組成,但第一個(gè)字符必須是字母(大、小寫皆可),起名時(shí)盡量做到見名知義,如本例中我們可用變量ZF表示總分,PJF表示平均分.解:程序框圖如下圖:程序:A=80B=75C=95ZF=A+B+CPJF=ZF/3PRINTZF,PJFEND課堂小結(jié)(1)輸入語句、輸出語句和賦值語句的基本用法.(2)用輸入語句、輸出語句和賦值語句編寫算法語句.作業(yè)習(xí)題1.2A組設(shè)計(jì)感想本節(jié)的引入闡明了程序框圖與算法語句的關(guān)系,本節(jié)利用框圖與語句的對應(yīng)關(guān)系降低了本節(jié)的學(xué)習(xí)難度.由于本節(jié)是算法語句的開始,所以本節(jié)選用了大量難度較低的算法語句供學(xué)生練習(xí),讓學(xué)生充分體會程序框圖與算法語句的關(guān)系,為今后的學(xué)習(xí)打好基礎(chǔ)并樹立信心.備課資料某市公用電話(市話)的收費(fèi)標(biāo)準(zhǔn)為:3分鐘之內(nèi)(包括3分鐘)收取0.30元;超過3分鐘部分按0.10元/分鐘加收費(fèi).設(shè)計(jì)一個(gè)程序,根據(jù)通話時(shí)間計(jì)算話費(fèi).解:TNPUT“通話時(shí)間”;tIFt<=3andt>0THENc=0.30ELSEc=0.30+0.10*(t-3)ENDIFPRINT“通話費(fèi)用”;cEND1.2.2條件語句整體設(shè)計(jì)教學(xué)分析通過上一節(jié)的學(xué)習(xí),學(xué)生學(xué)會了輸入語句、輸出語句和賦值語句的基本用法,本節(jié)介紹條件語句的用法.程序中的條件語句與程序框圖中的條件結(jié)構(gòu)存在一一對應(yīng)關(guān)系,這種對應(yīng)關(guān)系對于學(xué)生理解條件語句的結(jié)構(gòu),進(jìn)一步理解算法中的條件結(jié)構(gòu)都是很有幫助的.我們可以給出條件語句的一般格式,讓學(xué)生自己畫出相應(yīng)的程序框圖,也可以給出程序框圖,讓學(xué)生寫出算法語句.三維目標(biāo)1.理解學(xué)習(xí)基本算法語句的意義.2.學(xué)會條件語句的基本用法.3.理解算法步驟、程序框圖和算法語句的關(guān)系,學(xué)會算法語句的寫法.重點(diǎn)難點(diǎn)教學(xué)重點(diǎn):條件語句的基本用法.教學(xué)難點(diǎn):算法語句的寫法.課時(shí)安排1課時(shí)教學(xué)過程導(dǎo)入新課思路1(情境導(dǎo)入)一位老農(nóng)平整了一塊良田,種瓜好呢,還是種豆好呢,他面臨著一個(gè)選擇.如果他選擇種瓜,他會得瓜,如果他選擇種豆,他會得豆.人的一生面臨許多選擇,我們要做出正確的選擇.前面我們學(xué)習(xí)了條件結(jié)構(gòu),今天我們學(xué)習(xí)條件語句.思路2(直接導(dǎo)入)前面我們學(xué)習(xí)了程序框圖的畫法,為了讓計(jì)算機(jī)能夠理解算法步驟、程序框圖,上一節(jié)我們學(xué)習(xí)了輸入語句、輸出語句、賦值語句,今天我們開始學(xué)習(xí)條件語句.推進(jìn)新課新知探究提出問題(1)回憶程序框圖中的兩種條件結(jié)構(gòu).(2)指出條件語句的格式及功能.(3)指出兩種條件語句的相同點(diǎn)與不同點(diǎn).(4)揭示程序中的條件語句與程序框圖中的條件結(jié)構(gòu)存在一一對應(yīng)關(guān)系.討論結(jié)果:(1)一個(gè)算法中,經(jīng)常會遇到一些條件的判斷,算法的流程根據(jù)條件是否成立有不同的流向.條件結(jié)構(gòu)就是處理這種過程的結(jié)構(gòu).用程序框圖表示條件結(jié)構(gòu)如下圖:(2)條件語句1°“IF—THEN—ELSE”語句格式:IF條件THEN語句體1ELSE語句體2ENDIF功能:在“IF—THEN—ELSE”語句中,“條件”表示判斷的條件,“語句體1”表示滿足條件時(shí)執(zhí)行的操作內(nèi)容;“語句體2”表示不滿足條件時(shí)執(zhí)行的操作內(nèi)容;ENDIF表示條件語句的結(jié)束.計(jì)算機(jī)在執(zhí)行“IF—THEN—ELSE”語句時(shí),首先對IF后的條件進(jìn)行判斷,如果符合條件,則執(zhí)行THEN后面的“語句1”;若不符合條件,則執(zhí)行ELSE后面的“語句2”.2°“IF—THEN”語句格式:IF條件THEN語句體ENDIF功能:“條件”表示判斷的條件;“語句”表示滿足條件時(shí)執(zhí)行的操作內(nèi)容,條件不滿足時(shí),直接結(jié)束判斷過程;ENDIF表示條件語句的結(jié)束.計(jì)算機(jī)在執(zhí)行“IF—THEN”語句時(shí),首先對IF后的條件進(jìn)行判斷,如果符合條件就執(zhí)行THEN后邊的語句,若不符合條件則直接結(jié)束該條件語句,轉(zhuǎn)而執(zhí)行其他后面的語句.(3)相同點(diǎn):首先對IF后的條件進(jìn)行判斷,如果符合條件就執(zhí)行THEN后邊的語句.不同點(diǎn):對于“IF—THEN—ELSE”語句,若不符合條件,則執(zhí)行ELSE后面的“語句體2”.對于“IF—THEN”語句,若不符合條件則直接結(jié)束該條件語句,轉(zhuǎn)而執(zhí)行其他后面的語句.(4)程序中的條件語句與程序框圖中的條件結(jié)構(gòu)存在一一對應(yīng)關(guān)系如下圖:應(yīng)用示例思路1例1編寫一個(gè)程序,求實(shí)數(shù)x的絕對值.算法分析:首先,我們來設(shè)計(jì)求實(shí)數(shù)x的絕對值的算法,因?yàn)閷?shí)數(shù)x的絕對值為|x|=所以算法步驟可以寫成:第一步,輸入一個(gè)實(shí)數(shù)x.第二步,判斷x的符號.若x≥0,則輸出x;否則,輸出-x.顯然,“第二步”可以用條件結(jié)構(gòu)來實(shí)現(xiàn).程序框圖如下圖:程序:INPUTxIFx>=0THENPRINTxELSEPRINT-xENDIFEND點(diǎn)評:通過本題我們看到算法步驟可以轉(zhuǎn)化為程序框圖,程序框圖可以轉(zhuǎn)化為算法語句.本題揭示了它們之間的內(nèi)在聯(lián)系,只要理解了程序框圖與算法語句的對應(yīng)關(guān)系,把程序框圖轉(zhuǎn)化為算法語句就很容易了.變式訓(xùn)練閱讀下面的程序,你能得出什么結(jié)論?INPUTxIFx<0THENx=-xENDIFPRINTxEND解:由程序得出,該程序是輸出x的絕對值.例2把前面求解一元二次方程ax2+bx+c=0的程序框圖轉(zhuǎn)化為程序.解:由程序框圖可以發(fā)現(xiàn),其中包含著兩個(gè)條件結(jié)構(gòu),而且內(nèi)層的條件結(jié)構(gòu)是外層的條件結(jié)構(gòu)的一個(gè)分支,所以,可以用“IF—THEN—ELSE—ENDIF”來完成轉(zhuǎn)化.程序:INPUT“a,b,c=”;a,b,cd=b^2-4*a*cIFd>=0THENp=-b/(2*a)q=SQR(d)/(2*a)IFd=0THENPRINT“x1=x2=”;pELSEPRINT“x1,x2=”;p+q,p-qENDIFELSEPRINT“Norealroot”ENDIFEND例3編寫程序,使任意輸入的3個(gè)整數(shù)按從大到小的順序輸出.算法分析:用a,b,c表示輸入的3個(gè)整數(shù).為了節(jié)約變量,把它們重新排列后,仍用a,b,c表示,并使a≥b≥c.具體操作步驟如下:第一步,輸入3個(gè)整數(shù)a,b,c.第二步,將a與b比較,并把小者賦給b,大者賦給a.第三步,將a與c比較,并把小者賦給c,大者賦給a(此時(shí)a已是三者中最大的).第四步,將b與c比較,并把小者賦給c,大者賦給b(此時(shí)a,b,c已按從大到小的順序排列好).第五步,按順序輸出a,b,c.如下圖所示,上述操作步驟可以用程序框圖更直觀地表達(dá)出來.根據(jù)程序框圖,寫出相應(yīng)的計(jì)算機(jī)程序.INPUT“a,b,c=”;a,b,cIFb>aTHENt=aa=bb=tENDIFIFc>aTHENt=aa=cc=tENDIFIFc>bTHENt=bb=cc=tENDIFPRINTa,b,cEND思路2例1編寫程序,輸出兩個(gè)不相等的實(shí)數(shù)a、b的最大值.分析:要輸出兩個(gè)不相等的實(shí)數(shù)a、b的最大值,從而想到對a,b的大小關(guān)系進(jìn)行判斷,a,b的大小關(guān)系有兩種情況:(1)a>b;(2)b>a.這也就用到了我們經(jīng)常提及的分類討論的方式,找出兩個(gè)數(shù)的最大值.解:算法一:第一步,輸入a,b的數(shù)值.第二步,判斷a,b的大小關(guān)系,若a>b,則輸出a的值,否則,輸出b的值.(程序框圖如下圖)程序如下:(“IF—THEN—ELSE”語句)INPUT“a,b”;a,bIFa>bTHENPRINTaELSEPRINTbENDIFEND算法二:第一步,輸入a,b的數(shù)值.第二步,判斷a,b的大小關(guān)系,若b>a,則將b的值賦予a;否則,直接執(zhí)行第三步.第三步,輸出a的值,結(jié)束.(程序框圖如下圖)程序如下:(“IF—THEN”語句)INPUT“a,b”;a,bIFb>aTHENa=bENDIFPRINTaEND點(diǎn)評:設(shè)計(jì)一個(gè)“好”的算法需要在大量的算法設(shè)計(jì)中積累經(jīng)驗(yàn).我們也可以先根據(jù)自己的思路設(shè)計(jì)算法,再與“成形”的、高效的、優(yōu)秀的算法比較,改進(jìn)思路,改進(jìn)算法,以避免重復(fù)計(jì)算等問題,提高算法設(shè)計(jì)的水平.(2)我們在平常的訓(xùn)練中盡可能地少引用變量,過多的變量不僅會使得算法和程序變得復(fù)雜,而且不利于計(jì)算機(jī)的執(zhí)行.為此,我們在練習(xí)中要盡可能少引入變量并且要積極思考才能少引入變量.例2高等數(shù)學(xué)中經(jīng)常用到符號函數(shù),符號函數(shù)的定義為y=試編寫程序輸入x的值,輸出y的值.解:程序一:(嵌套結(jié)構(gòu))程序框圖:(下圖)程序如下:INPUTxIFx>0THENy=1ELSEIFx=0THENy=0ELSEy=-1ENDIFENDIFPRINTyEND程序二:(疊加結(jié)構(gòu))程序框圖(右圖):程序如下:INPUTxIFx>0THENy=1ENDIFIFx=0THENy=0ENDIFIFx<0THENy=-1ENDIFPRINTyEND點(diǎn)評:(1)條件結(jié)構(gòu)的差異,造成程序執(zhí)行的不同.當(dāng)代入x的數(shù)值時(shí),“程序一”先判斷外層的條件,依次執(zhí)行不同的分支,隨后再判斷內(nèi)層的條件;而“程序二”中執(zhí)行了對“條件1”的判斷,同時(shí)也對“條件2”進(jìn)行判斷,是按程序中條件語句的先后依次判斷所有的條件,滿足哪個(gè)條件就執(zhí)行哪個(gè)語句.(2)條件語句的嵌套可多于兩層,可以表達(dá)算法步驟中的多重限制條件.知能訓(xùn)練中國網(wǎng)通規(guī)定:撥打市內(nèi)電話時(shí),如果不超過3分鐘,則收取話費(fèi)0.22元;如果通話時(shí)間超過3分鐘,則超出部分按每分鐘0.1元收取通話費(fèi),不足一分鐘按以一分鐘計(jì)算.設(shè)通話時(shí)間為t(分鐘),通話費(fèi)用y(元),如何設(shè)計(jì)一個(gè)程序,計(jì)算通話的費(fèi)用.解:算法程序如下:INPUT“請輸入通話時(shí)間:”;tIFt<=3THENy=0.22ELS
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 金融投資居間服務(wù)合同模板
- 2025年度辦公室清潔與生態(tài)環(huán)保技術(shù)應(yīng)用合同
- 住宅買賣中介服務(wù)合同
- 展覽館裝修合同管理費(fèi)方案
- 倉儲服務(wù)居間合同
- 的汽車轉(zhuǎn)讓合同
- 美容化妝品行業(yè)產(chǎn)品追溯與營銷推廣方案
- 數(shù)字化供應(yīng)鏈管理體系建設(shè)方案
- 知識產(chǎn)權(quán)歸屬及保密協(xié)議南京廖華
- 三農(nóng)村低保申請與審核手冊
- 人教版九年級英語動(dòng)詞時(shí)態(tài)專項(xiàng)練習(xí)(含答案和解析)
- 蘭州市規(guī)范醫(yī)療服務(wù)價(jià)格項(xiàng)目基準(zhǔn)價(jià)格表
- 2006年度銀行業(yè)金融機(jī)構(gòu)信息科技風(fēng)險(xiǎn)評價(jià)審計(jì)要點(diǎn)
- 反恐C-TPAT程序文件整套(通用)
- 2022年全國高考詩歌鑒賞試題-教學(xué)課件
- 2023-2024學(xué)年浙江省杭州市小學(xué)語文六年級上冊期末深度自測試題
- GB/T 19868.2-2005基于焊接經(jīng)驗(yàn)的工藝評定
- 機(jī)房巡檢記錄表
- 警燈、警報(bào)器使用證申請表
- (中職)電梯維護(hù)與保養(yǎng)項(xiàng)目九 電梯曳引系統(tǒng)的維護(hù)與保養(yǎng)教學(xué)課件
- 中國科學(xué)院率先行動(dòng)計(jì)劃組織實(shí)施方案
評論
0/150
提交評論