版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第一章算法初步
一、課標(biāo)要求:
1、本章的課標(biāo)要求包括算法的含義、程序框圖、基本算法語(yǔ)句,
通過(guò)閱讀中國(guó)古代教學(xué)中的算法案例,體會(huì)中國(guó)古代數(shù)學(xué)世界數(shù)學(xué)發(fā)
展的貢獻(xiàn)。
2、算法就是解決問(wèn)題的步驟,算法也是數(shù)學(xué)及其應(yīng)用的重要組
成部分,是計(jì)算機(jī)科學(xué)的基礎(chǔ),利用計(jì)算機(jī)解決問(wèn)需要算法,在日常
生活中做任何事情也都有算法,當(dāng)然我們更關(guān)心的是計(jì)算機(jī)的算法,
計(jì)算機(jī)可以解決多類(lèi)信息處理問(wèn)題,但人們必須事先用計(jì)算機(jī)熟悉的
語(yǔ)言,也就是計(jì)算能夠理解的語(yǔ)言(即程序設(shè)計(jì)語(yǔ)言)來(lái)詳細(xì)描述解
決問(wèn)題的步驟,即首先設(shè)計(jì)程序,對(duì)稍復(fù)雜一些的問(wèn)題,直接寫(xiě)出解
決該問(wèn)題的程序是困難的,因此,我們要首先研究解決問(wèn)題的算法,
再把算法轉(zhuǎn)化為程序,所以算法設(shè)計(jì)是使用計(jì)算機(jī)解決具體問(wèn)題的一
個(gè)極為重要的環(huán)節(jié)。
3、通過(guò)對(duì)解決具體問(wèn)題的過(guò)程與步驟的分析(如二元一次方程
組的求解等問(wèn)題),體會(huì)算法的思想,了解算法的含義。理解程序框
圖的三種基本邏輯結(jié)構(gòu):順序結(jié)構(gòu)、條件結(jié)構(gòu)、循環(huán)結(jié)構(gòu)。理解并掌
握兒種基本的算法語(yǔ)句一一輸入語(yǔ)句、輸出語(yǔ)句、賦值語(yǔ)句、條件語(yǔ)
句、循環(huán)語(yǔ)句。進(jìn)一步體會(huì)算法的基本思想。
4、本章的重點(diǎn)是體會(huì)算法的思想,了解算法的含義,通過(guò)模仿、
操作、探索,經(jīng)過(guò)通過(guò)設(shè)計(jì)程序框圖解決問(wèn)題的過(guò)程。點(diǎn)是在具體問(wèn)
題的解決過(guò)程中,理解三種基本邏輯結(jié)構(gòu),經(jīng)歷將具體問(wèn)題的程序框
圖轉(zhuǎn)化為程序語(yǔ)句的過(guò)程,理解幾種基本的算法語(yǔ)句。
二、編寫(xiě)意圖與特色:
算法是數(shù)學(xué)及其應(yīng)用的重要組成部分,是計(jì)算科學(xué)的重要基礎(chǔ)。
隨著現(xiàn)代信息技術(shù)飛速發(fā)展,算法在科學(xué)技術(shù)、社會(huì)發(fā)展中發(fā)揮著越
來(lái)越大的作用,并日益融入社會(huì)生活的許多方面,算法思想已經(jīng)成為
現(xiàn)代人應(yīng)具備的一種數(shù)學(xué)素養(yǎng)。需要特別指出的是,中國(guó)古代數(shù)學(xué)中
蘊(yùn)涵了豐富的算法思想。在本模塊中,學(xué)生將在義務(wù)教育階段初步感
受算法思想的基礎(chǔ)上,結(jié)合對(duì)具體數(shù)學(xué)實(shí)例的分析,體驗(yàn)程序框圖在
解決問(wèn)題中的作用;通過(guò)模仿、操作、探索,學(xué)習(xí)設(shè)計(jì)程序框圖表達(dá)
解決問(wèn)題的過(guò)程;體會(huì)算法的基本思想以及算法的重要性和有效性,
發(fā)展有條理的思考與表達(dá)的能力,提高邏輯思維能力。
1、結(jié)合熟悉的算法,把握算法的基本思想,學(xué)會(huì)用自然語(yǔ)言來(lái)
描述算法。
2、通過(guò)模仿、操作和探索,經(jīng)歷設(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ò)實(shí)際問(wèn)題的學(xué)習(xí),了解構(gòu)造算法的基本程序。
4、經(jīng)歷將具體問(wèn)題的程序流程圖轉(zhuǎn)化為程序語(yǔ)句的過(guò)程,理解
幾種基本算法語(yǔ)句——輸入語(yǔ)句、輸出語(yǔ)句、賦值語(yǔ)句、條件語(yǔ)句、
循環(huán)語(yǔ)句,體會(huì)算法的基本思想。
5、需要注意的問(wèn)題
1)從熟知的問(wèn)題出發(fā),體會(huì)算法的程序化思想,而不是簡(jiǎn)單呈
現(xiàn)一些算法。
2)變量和賦值是算法學(xué)習(xí)的重點(diǎn)之一,因?yàn)樵O(shè)置恰當(dāng)?shù)淖兞浚?/p>
學(xué)習(xí)給變量賦值,是構(gòu)造算法的關(guān)鍵,應(yīng)作為學(xué)習(xí)的重點(diǎn)。
3)不必刻意追求最優(yōu)的算法,把握算法的基本結(jié)構(gòu)和程序化思
想才是我們的重點(diǎn)。
4)本章所指的算法基本上是能在計(jì)算機(jī)上實(shí)現(xiàn)的算法。
三、教學(xué)內(nèi)容及課時(shí)安排:
1.1算法與程序框圖(約2課時(shí))
1.2基本算法語(yǔ)句(約3課時(shí))
1.3算法案例(約5課時(shí)一)
復(fù)習(xí)與小結(jié)(約2課時(shí))
四、評(píng)價(jià)建議
1.重視對(duì)學(xué)生數(shù)學(xué)學(xué)習(xí)過(guò)程的評(píng)價(jià)
關(guān)注學(xué)生在數(shù)學(xué)語(yǔ)言的學(xué)習(xí)過(guò)程中,是否對(duì)用集合語(yǔ)言描述數(shù)學(xué)
和現(xiàn)實(shí)生活中的問(wèn)題充滿(mǎn)興趣;在學(xué)習(xí)過(guò)程中,能否體會(huì)集合語(yǔ)言準(zhǔn)
確、簡(jiǎn)潔的特征;是否能積極、主動(dòng)地發(fā)展自己運(yùn)用數(shù)學(xué)語(yǔ)言進(jìn)行交
流的能力。
2.正確評(píng)價(jià)學(xué)生的數(shù)學(xué)基礎(chǔ)知識(shí)和基本技能
關(guān)注學(xué)生在本章(節(jié))及今后學(xué)習(xí)中,讓學(xué)生集中學(xué)習(xí)算法的初
步知識(shí),主要包括算法的基本結(jié)構(gòu)、基本語(yǔ)句、基本思想等。算法思
想將貫穿高中數(shù)學(xué)課程的相關(guān)部分,在其他相關(guān)部分還將進(jìn)一步學(xué)習(xí)
算法
1.1.[算法的檄念(第一課時(shí))
一、教學(xué)目標(biāo):
1、知識(shí)與技能:(1)了解算法的含義,體會(huì)算法的思想。(2)能夠
用自然語(yǔ)言敘述算法。(3)掌握正確的算法應(yīng)滿(mǎn)足的要求。(4)會(huì)寫(xiě)
出解線(xiàn)性方程(組)的算法。(5)會(huì)寫(xiě)出一個(gè)求有限整數(shù)序列中的最
大值的算法。(6)會(huì)應(yīng)用Scilab求解方程組。
2、過(guò)程與方法:通過(guò)求解二元一次方程組,體會(huì)解方程的一般性步
驟,從而得到一個(gè)解二元一次方程組的步驟,這些步驟就是算法,不
同的問(wèn)題有不同的算法。由于思考問(wèn)題的角度不同,同一個(gè)問(wèn)題也可
能有多個(gè)算法,能模仿求解二元一次方程組的步驟,寫(xiě)出一個(gè)求有限
整數(shù)序列中的最大值的算法。
3、情感態(tài)度與價(jià)值觀(guān):通過(guò)本節(jié)的學(xué)習(xí),使我們對(duì)計(jì)算機(jī)的算法語(yǔ)
言有一個(gè)基本的了解,明確算法的要求,認(rèn)識(shí)到計(jì)算機(jī)是人類(lèi)征服自
然的一各有力工具,進(jìn)一步提高探索、認(rèn)識(shí)世界的能力。
二、重點(diǎn)與難點(diǎn):
重點(diǎn):算法的含義、解二元一次方程組和判斷一個(gè)數(shù)為質(zhì)數(shù)的算
法設(shè)計(jì)。
難點(diǎn):把自然語(yǔ)言轉(zhuǎn)化為算法語(yǔ)言。
三、學(xué)法與教學(xué)用具:
學(xué)法:1、寫(xiě)出的算法,必須能解決一類(lèi)問(wèn)題(如:判斷一個(gè)整數(shù)
n(n>l)是否為質(zhì)數(shù);求任意一個(gè)方程的近似解;……),并且能夠重
復(fù)使用。
2、要使算法盡量簡(jiǎn)單、步驟盡量少。
3、要保證算法正確,且計(jì)算機(jī)能夠執(zhí)行,如:讓計(jì)算機(jī)計(jì)算1
X2X3X4X5是可以做到的,但讓計(jì)算機(jī)去執(zhí)行“倒一杯水”“替我
理發(fā)”等則是做不到的。
教學(xué)用具:電腦,計(jì)算器,圖形計(jì)算器
四、教學(xué)設(shè)想:
1、創(chuàng)設(shè)情境:
算法作為一個(gè)名詞,在中學(xué)教科書(shū)中并沒(méi)有出現(xiàn)過(guò),我們?cè)诨A(chǔ)
教育階段還沒(méi)有接觸算法概念。但是我們卻從小學(xué)就開(kāi)始接觸算法,
熟悉許多問(wèn)題的算法。如,做四則運(yùn)算要先乘除后加減,從里往外脫
括弧,豎式筆算等都是算法,至于乘法口訣、珠算口訣更是算法的具
體體現(xiàn)。我們知道解一元二次方程的算法,求解一元一次不等式、-
元二次不等式的算法,解線(xiàn)性方程組的算法,求兩個(gè)數(shù)的最大公因數(shù)
的算法等。因此,算法其實(shí)是重要的數(shù)學(xué)對(duì)象。
2、探索研究
算法(algorithm)一詞源于算術(shù)(algorism),即算術(shù)方法,是指
一個(gè)由已知推求未知的運(yùn)算過(guò)程。后來(lái),人們把它推廣到一般,把進(jìn)
行某一工作的方法和步驟稱(chēng)為算法。
廣義地說(shuō),算法就是做某一件事的步驟或程序。菜譜是做菜肴的
算法,洗衣機(jī)的使用說(shuō)明書(shū)是操作洗衣機(jī)的算法,歌譜是一首歌曲的
算法。在數(shù)學(xué)中,主要研究計(jì)算機(jī)能實(shí)現(xiàn)的算法,即按照某種機(jī)械程
序步驟一定可以得到結(jié)果的解決問(wèn)題的程序。比如解方程的算法、函
數(shù)求值的算法、作圖的算法,等等。
3、例題分析:
例1任意給定一個(gè)大于1的整數(shù)n,試設(shè)計(jì)一個(gè)程序或步驟對(duì)n
是否為質(zhì)數(shù)?做出判定。
算法分析:根據(jù)質(zhì)數(shù)的定義,很容易設(shè)計(jì)出下面的步驟:
第一步:判斷n是否等于2,若n=2,則n是質(zhì)數(shù);若n>2,則執(zhí)
行第二步。
第二步:依次從2至(nT)檢驗(yàn)是不是n的因數(shù),即整除n的
數(shù),若有這樣的數(shù),則n不是質(zhì)數(shù);若沒(méi)有這樣的數(shù),則n是質(zhì)數(shù)。
這是判斷一個(gè)大于1的整數(shù)n是否為質(zhì)數(shù)的最基本算法。
例2用二分法設(shè)計(jì)一個(gè)求議程x2-2=0的近似根的算法。
算法分析:回顧二分法解方程的過(guò)程,并假設(shè)所求近似根與準(zhǔn)確
解的差的絕對(duì)值不超過(guò)0.005,則不難設(shè)計(jì)出以下步驟:
2
第一步:4f(x)=x-2o因?yàn)閒(l)<0,f(2)>0,所以設(shè)X1=LX2=2O
第二步:令m=(Xi+xJ/2,判斷f(m)是否為0,若則,則m為所長(zhǎng);
若否,則繼續(xù)判斷f(x)-f(m)大于。還是小于0。
第三步:若f(x。?f(m)>0,則令xi=m;否則,令X2=m。
第四步:判斷|x「X2|<0.005是否成立?若是,則x1、X2之間的任意
取值均為滿(mǎn)足條件的近似根;若否,則返回第二步。
小結(jié):算法具有以下特性:(1)有窮性;(2)確定性;(3)順序性;
(4)不惟一性;(5)普遍性
典例剖析:
1、基本概念題
「x-2y=-l,①
例3寫(xiě)出解二元一次也程組的算法
I2x+y=l②
解:第一步,②-①X2得5y=3;③
第二步,解③得y=3/5;
第三步,將y=3/5代入①,得x=l/5
學(xué)生做一做:對(duì)于一般的二元一次方程組來(lái)說(shuō),上述步驟應(yīng)該怎
樣進(jìn)一步完善?
老師評(píng)一評(píng):本題的算法是由加減消元法求解的,這個(gè)算法也適
畬一般的三元一次方程組的解法。下面寫(xiě)出求方程組
3即+q=0_B向h0)的解的算法:
I第上步:一②XA「①XAz,W(A1B2-A2Bi)y+A1C2-A2C,=0;③
第二步:解③,得一A"AC;
第三步:將y=4°匚4鑼》欠立,得xiJB?。
此時(shí)我們得到泮完結(jié)k方程組的求解公第廣舟由此公司可得到
倒2的另一個(gè)算法:
第一步:取Ai=LBF-2,3=1,A2=2,B2=l,C2=-l;
第二步:計(jì)算x=二"G+4Q與y=44-
第三步:輸出運(yùn)算結(jié)果。
可見(jiàn)利用上述算法,更加有利于上機(jī)執(zhí)行與操作。
基礎(chǔ)知識(shí)應(yīng)用題
例4寫(xiě)出一個(gè)求有限整數(shù)列中的最大值的算法。
解:算法如下。
S1先假定序列中的第一個(gè)整數(shù)為“最大值”。
S2將序列中的下一個(gè)整數(shù)值與“最大值”比較,如果它大
于此“最大值”,這時(shí)你就假定“最大值”是這個(gè)整數(shù)。
S3如果序列中還有其他整數(shù),重復(fù)S2。
S4在序列中一直到?jīng)]有可比的數(shù)為止,這時(shí)假定的“最大
值”就是這個(gè)序列中的最大值。
學(xué)生做一做寫(xiě)出對(duì)任意3個(gè)整數(shù)a,b,c求出最大值的算法。
老師評(píng)一評(píng)在例2中我們是用自然語(yǔ)言來(lái)描述算法的,下面
我們用數(shù)學(xué)語(yǔ)言來(lái)描述本題的算法。
SImax=a
S2如果b>max,則max=b.
S3如果C>max,則max=c.
S4max就是a,b,c中的最大值。
綜合應(yīng)用題
例5寫(xiě)出求1+2+3+4+5+6的一個(gè)算法。
分析:可以按逐一相加的程序進(jìn)行,也可以利用公式1+2+-
+上幽里2進(jìn)行,也可以根據(jù)加法運(yùn)算律簡(jiǎn)化運(yùn)算過(guò)程。
2
解:算法1:
S1:計(jì)算1+2得到3;
S2:將第一步中的運(yùn)算結(jié)果3與3相加得到6;
S3:將第二步中的運(yùn)算結(jié)果6與4相加得到10;
S4:將第三步中的運(yùn)算結(jié)果10與5相加得到15;
S5:將第四步中的運(yùn)算結(jié)果15與6相加得到21。
算法2:
S1:取n=6;
S2:計(jì)算也5;
S3:輸出運(yùn)寅:結(jié)果。
算法3:
S1:將原式變形為(1+6)+(2+5)+(3+4)=3X7;
S2:計(jì)算3X7;
S3:輸出運(yùn)算結(jié)果。
小結(jié):算法1是最原始的方法,最為繁瑣,步驟較多,當(dāng)加數(shù)較
大時(shí),比如1+2+3+…+10000,再用這種方法是行不通的;算法2與
算法3都是比較簡(jiǎn)單的算法,但比較而言,算法2最為簡(jiǎn)單,且易于
在計(jì)算機(jī)上執(zhí)行操作。
學(xué)生做一做求1X3X5X7X9X11的值,寫(xiě)出其算法。
老師評(píng)一評(píng)算法1;第一步,先求1X3,得到結(jié)果3;
第二步,將第一步所得結(jié)果3再乘以5,得到結(jié)果15;
第三步,再將15乘以7,得到結(jié)果105;
第四步,再將105乘以9,得到945;
第五步,再將945乘以11,得到10395,即是最后結(jié)果。
算法2:用P表示被乘數(shù),i表示乘數(shù)。
S1使P=l。
S2使i=3
S3使P=PXi
S4使i=i+2
S5若iWll,則返回到S3繼續(xù)執(zhí)行;否則算法結(jié)束。
小結(jié)由于計(jì)算機(jī)動(dòng)是高速計(jì)算的自動(dòng)機(jī)器,實(shí)現(xiàn)循環(huán)的語(yǔ)句。
因此,上述算法2不僅是正確的,而且是在計(jì)算機(jī)上能夠?qū)崿F(xiàn)的較好
的算法。在上面的算法中,S3,S4,S5構(gòu)成一個(gè)完整的循環(huán),這里
需要說(shuō)明的是,每經(jīng)過(guò)一次循環(huán)之后,變量P、i的值都發(fā)生了變化,
并且生循環(huán)一次之后都要在步驟S5對(duì)i的值進(jìn)行檢驗(yàn),一旦發(fā)現(xiàn)i
的值大于11時(shí),立即停止循環(huán),同時(shí)輸出最后一個(gè)P的值,對(duì)于循
環(huán)結(jié)構(gòu)的詳細(xì)情況,我們將在以后的學(xué)習(xí)中介紹。
4、課堂小結(jié)
本節(jié)課主要講了算法的概念,算法就是解決問(wèn)題的步驟,平時(shí)列
論我們做什么事都離不開(kāi)算法,算法的描述可以用自然語(yǔ)言,也可以
用數(shù)學(xué)語(yǔ)言。
例如,某同學(xué)要在下午到體育館參加比賽,比賽下午2時(shí)開(kāi)始,
請(qǐng)寫(xiě)出該同學(xué)從家里發(fā)到比賽地的算法。
若用自然語(yǔ)言來(lái)描述可寫(xiě)為
(1)1:00從家出發(fā)到公共汽車(chē)站
(2)1:10上公共汽車(chē)
(3)1:40到達(dá)體育館
(4)1:45做準(zhǔn)備活動(dòng)。
(5)2:00比賽開(kāi)始。
若用數(shù)學(xué)語(yǔ)言來(lái)描述可寫(xiě)為:
S11:00從家出發(fā)到公共汽車(chē)站
S21:10上公共汽車(chē)
S31:40到達(dá)體育館
S41:45做準(zhǔn)備活動(dòng)
S52:00比賽開(kāi)始
大家從中要以看出,實(shí)際上兩種寫(xiě)法無(wú)本質(zhì)區(qū)別,但我們?cè)跁?shū)寫(xiě)
時(shí)應(yīng)盡量用教學(xué)語(yǔ)言來(lái)描述,它的優(yōu)越性在以后的學(xué)習(xí)中我們會(huì)體會(huì)
到。
5、自我評(píng)價(jià)
1、寫(xiě)出解一元二次方程ax2+bx+c=0(a^O)的一個(gè)算法。
2、寫(xiě)出求1至1000的正數(shù)中的3倍數(shù)的一個(gè)算法(打印結(jié)果)
6、評(píng)價(jià)標(biāo)準(zhǔn)
1、解:算法如下
S1計(jì)算△=b',4ac
S2如果△〈0,則方程無(wú)解;否則xl=
S3輸出計(jì)算結(jié)果xl,x2或無(wú)解信息。
2、解:算法如下:
S1使i=l
S2i被3除,得余數(shù)r
S3如果r=0,則打印i,否則不打印
S4使i=i+l
S5若iWlOOO,則返回到S2繼續(xù)執(zhí)行,否則算法結(jié)束。
7、作業(yè):1、寫(xiě)出解不等式y(tǒng)-2『3<0的一個(gè)算法。
解:第一步:1-2才-3=0的兩根是為=3,蒞=-1。
第二步:由3<0可知不等式的解集為{x|-kx<3}。
評(píng)注:該題的解法具有一般性,下面給出形如的不等
式的解的步驟(為方便,我們?cè)O(shè)a>0)如下:
第一步:計(jì)算△=h2-4ac;____
第二步:若△>(),示出方程兩根2=士生土(設(shè)荀>苞),
則不等式解集為{xIX>Xj或求也};
第三步:若4=0,則不等式解集為{才|x£R且X#-幺};
第四步:若則不等式的解集為R。2a
2、求過(guò)PE,")、Q(a,㈤兩點(diǎn)的直線(xiàn)斜率有如下的算法:
弟一'步:取x1=a.\fy尸6i,蒞=321y\—th;
第二步:若XL附
第三步:輸出斜率不存在;
第四步:若為力熱;
第五步:計(jì)算%=上之;
第六步:輸出結(jié)英廠(chǎng)”
3、寫(xiě)出求過(guò)兩點(diǎn)M(-2,-l),N⑵3)的直線(xiàn)與坐標(biāo)軸圍成面積的
一個(gè)算法。
解:算法:第一步:取用=-2,y=T,涇=2,%=3;
第二步:計(jì)算七/_==>;
第三步:在第土步維巢幣各尸0得到y(tǒng)的值m,得直線(xiàn)與y軸交
點(diǎn)(0,m);
第四步:在第二步結(jié)果中令尸0得到x的值n,得直線(xiàn)與x軸交
點(diǎn)(n,0);
第五步:計(jì)算
第六步:輸出運(yùn)算結(jié)房
1.1.2程序植圖律二、三瞟%)
一、教學(xué)目標(biāo):
1、知識(shí)與技能:掌握程序框圖的概念;會(huì)用通用的圖形符號(hào)表示算
法,掌握算法的三個(gè)基本邏輯結(jié)構(gòu);掌握畫(huà)程序框圖的基本規(guī)則,能
正確畫(huà)出程序框圖。
2、過(guò)程與方法:通過(guò)模仿、操作、探索,經(jīng)歷通過(guò)設(shè)計(jì)程序框圖表
達(dá)解決問(wèn)題的過(guò)程;學(xué)會(huì)靈活、正確地畫(huà)程序框圖。
3、情感態(tài)度與價(jià)值觀(guān):通過(guò)本節(jié)的學(xué)習(xí),使我們對(duì)程序框圖有一個(gè)
基本的了解;掌握算法語(yǔ)言的三種基本邏輯結(jié)構(gòu),明確程序框圖的基
本要求;認(rèn)識(shí)到學(xué)習(xí)程序框圖是我們學(xué)習(xí)計(jì)算機(jī)的一個(gè)基本步驟,也
是我們學(xué)習(xí)計(jì)算機(jī)語(yǔ)言的必經(jīng)之路。
二、重點(diǎn)與難點(diǎn):重點(diǎn)是程序框圖的基本概念、基本圖形符號(hào)和3種
基本邏輯結(jié)構(gòu),難點(diǎn)是能綜合運(yùn)用這些知識(shí)正確地畫(huà)出程序框圖。
三、學(xué)法與教學(xué)用具:
1、通過(guò)上節(jié)學(xué)習(xí)我們知道,算法就是解決問(wèn)題的步驟,在我們
利用計(jì)算機(jī)解決問(wèn)題的時(shí)候,首先我們要設(shè)計(jì)計(jì)算機(jī)程序,在設(shè)計(jì)計(jì)
算機(jī)程序時(shí)我們首先要畫(huà)出程序運(yùn)行的流程圖,使整個(gè)程序的執(zhí)行過(guò)
程直觀(guān)化,使抽象的問(wèn)題就得十分清晰和具體。有了這個(gè)流程圖,再
去設(shè)計(jì)程序就有了依據(jù),從而就可以把整個(gè)程序用機(jī)器語(yǔ)言表述出
來(lái),因此程序框圖是我們?cè)O(shè)計(jì)程序的基本和開(kāi)端。
2、我們?cè)趯W(xué)習(xí)這部分內(nèi)容時(shí),首先要弄清各種圖形符號(hào)的意義,
明確每個(gè)圖形符號(hào)的使用環(huán)境,圖形符號(hào)間的聯(lián)結(jié)方式。例如“起止
框”只能出現(xiàn)在整個(gè)流程圖的首尾,它表示程序的開(kāi)始或結(jié)束,其他
圖形符號(hào)也是如此,它們都有各自的使用環(huán)境和作用,這是我們?cè)趯W(xué)
習(xí)這部分知識(shí)時(shí)必須要注意的一個(gè)方面。另外,在我們描述算法或畫(huà)
程序框圖時(shí),必須遵循一定的邏輯結(jié)構(gòu),事實(shí)證明,無(wú)論如何復(fù)雜的
問(wèn)題,我們?cè)谠O(shè)計(jì)它們的算法時(shí),只需用順序結(jié)構(gòu)、條件結(jié)構(gòu)和循環(huán)
結(jié)構(gòu)這三種基本邏輯就可以了,因此我們必須掌握并正確地運(yùn)用這三
種基本邏輯結(jié)構(gòu)。
3、教學(xué)用具:電腦,計(jì)算器,圖形計(jì)算器
四、教學(xué)設(shè)想:
1、創(chuàng)設(shè)情境:
算法可以用自然語(yǔ)言來(lái)描述,但為了使算法的程序或步驟表達(dá)得
更為直觀(guān),我們更經(jīng)常地用圖形方式來(lái)表示它。
基本概念:
(1)起止就二)起止框是任何流程圖都不可缺少的,它
表明程序的開(kāi)始和結(jié)束,所以一個(gè)完整的流程圖的首末兩端必須是起
止框。
(2)輸入、輜贏(yíng):表示數(shù)據(jù)的輸入或結(jié)果的輸出,它
可用在算法中的任何需要輸入、輸出的位置。圖1T中有三個(gè)輸入、
輸出框。第一個(gè)出現(xiàn)在開(kāi)始后的第一步,它的作用是輸入未知數(shù)的系
數(shù)all,al2,a21,a22和常數(shù)項(xiàng)bl,b2,通過(guò)這一步,就可以把給定的
數(shù)值寫(xiě)在輸入框內(nèi),它實(shí)際上是把未知數(shù)的系數(shù)和常數(shù)項(xiàng)的值通知給
了計(jì)算機(jī),另外兩個(gè)是輸出框,它們分別位于由判斷分出的兩個(gè)分支
中,它們表示最后給出的運(yùn)算結(jié)果,左邊分支中的輸出分框負(fù)責(zé)輸出
DWO時(shí)未知數(shù)xl,x2的值,右邊分支中的輸出框負(fù)責(zé)輸出D=0時(shí)的
結(jié)果,即輸出無(wú)法求解信息。
(3)處它是采用來(lái)賦值、執(zhí)行計(jì)算語(yǔ)句、傳送運(yùn)
算結(jié)果的圖形符號(hào)。圖1-1中出現(xiàn)了兩個(gè)處理框。第一個(gè)處理框的作
用是計(jì)算D=alla22-a21al2的值,第二個(gè)處理框的作用是計(jì)算
xl=(bla22-b2al2)/D,x2=(b2all-bla21)/D的值。
(4)判而.判斷框一般有一個(gè)入口和兩個(gè)出口,有時(shí)
也有多個(gè)出口,它是惟一的具有兩個(gè)或兩個(gè)以上出口的符號(hào),在只有
兩個(gè)出口的情形中,通常都分成“是”與“否”(也可用“Y”與"N”)
兩個(gè)分支,在圖1-1中,通過(guò)判斷框?qū)的值進(jìn)行判斷,若判斷框中
的式子是D=0,則說(shuō)明D=0時(shí)由標(biāo)有“是”的分支處理數(shù)據(jù);若DW0,
則由標(biāo)有“否”的分支處理數(shù)據(jù)。例如,我們要打印x的絕對(duì)值,可
以設(shè)計(jì)如下框圖。
輸入x
結(jié)束
從圖中可以看到由判斷框分出兩個(gè)分支,構(gòu)成一個(gè)選擇性結(jié)構(gòu),
其中選擇的標(biāo)準(zhǔn)是“x20”,若符合這個(gè)條件,則按照“是”分支繼
續(xù)往下執(zhí)行;若不符合這個(gè)條件,則按照“否”分支繼續(xù)往下執(zhí)行,
這樣的話(huà),打印出的結(jié)果總是x的絕對(duì)值。
在學(xué)習(xí)這部分知識(shí)的時(shí)候,要掌握各個(gè)圖形的形狀、作用及使用
規(guī)則,畫(huà)程序框圖的規(guī)則如下:
(1)使用標(biāo)準(zhǔn)的圖形符號(hào)。
(2)框圖一般按從上到下、從左到右的方向畫(huà)。
(3)除判斷框外,大多數(shù)流程圖符號(hào)只有一個(gè)進(jìn)入點(diǎn)和一個(gè)退
出點(diǎn)。判斷框具有超過(guò)一個(gè)退出點(diǎn)的惟一符號(hào)。
(4)判斷框分兩大類(lèi),一類(lèi)判斷框“是”與“否”兩分支的判
斷,而且有且僅有兩個(gè)結(jié)果;另一類(lèi)是多分支判斷,有幾種不同的結(jié)
果。
(5)在圖形符號(hào)內(nèi)描述的語(yǔ)言要非常簡(jiǎn)練清楚。
2、典例剖析:
例1:已知x=4,y=2,畫(huà)出計(jì)算w=3x+4y的值的程序框圖。
解:程序框如下圖所示:
輸入4,24和2分
別是x和y的值
w=3X|4+4X2
v
輸出W
結(jié)盅
小結(jié):此圖的輸入框旁邊加了」TTHW框,它的作用是對(duì)框
中的數(shù)據(jù)或內(nèi)容進(jìn)行說(shuō)明,它可以出現(xiàn)在任何位置。
基礎(chǔ)知識(shí)應(yīng)用題
1)順序結(jié)構(gòu):順序結(jié)構(gòu)描述的是是最簡(jiǎn)單的算法結(jié)構(gòu),語(yǔ)句與語(yǔ)句
之間,框與框之間是按從上到下的順序進(jìn)行的。
例2:已知一個(gè)三角形的三邊分別為2、3、4,利用海倫公式設(shè)計(jì)一
個(gè)算法,求出它的面積,并畫(huà)出算法的程序框圖。
算法分析:這是一個(gè)簡(jiǎn)單的問(wèn)題,只需先算出p的值,再將它代
入公式,最后輸出結(jié)果,只用順序結(jié)構(gòu)就能夠表達(dá)出算法。
程序框圖:
s=Vp(p-2)(p-3)(p-4)
結(jié)束
2)條件結(jié)構(gòu):一些簡(jiǎn)單的算法可以用順序結(jié)構(gòu)來(lái)表示,但是這種結(jié)
構(gòu)無(wú)法對(duì)描述對(duì)象進(jìn)行邏輯判斷,并根據(jù)判斷結(jié)果進(jìn)行不同的處理。
因此,需要有另一種邏輯結(jié)構(gòu)來(lái)處理這類(lèi)問(wèn)題,這種結(jié)構(gòu)叫做條件結(jié)
構(gòu)。它是根據(jù)指定打件選擇執(zhí)行不同指令的控制結(jié)構(gòu)。
例3:任意給定3個(gè)正實(shí)數(shù),設(shè)計(jì)一個(gè)算法,判斷分別以這3個(gè)
數(shù)為三邊邊長(zhǎng)的三角形是否存在,畫(huà)出這個(gè)算法的程序框圖。
算法分析:判斷分別以這3個(gè)數(shù)為三邊邊長(zhǎng)的三角形是否存在,
只需要驗(yàn)收這3個(gè)數(shù)當(dāng)中任意兩個(gè)數(shù)的和是否大于第3個(gè)數(shù),這就需
要用到條件結(jié)構(gòu)。
程序框圖:
否同時(shí)成立?
是
結(jié)束
3)循環(huán)結(jié)構(gòu):在一些算法中,經(jīng)常會(huì)出現(xiàn)從某處開(kāi)始,按照一定條
件,反復(fù)執(zhí)行某一處理步驟的情況,這就是循環(huán)結(jié)構(gòu),反復(fù)執(zhí)行的處
理步驟為循環(huán)體,顯然,循環(huán)結(jié)構(gòu)中一定包含條件結(jié)構(gòu)。
循環(huán)結(jié)構(gòu)又稱(chēng)重復(fù)結(jié)構(gòu),循環(huán)結(jié)構(gòu)可細(xì)分為兩類(lèi):
(1)一類(lèi)是當(dāng)型循環(huán)結(jié)構(gòu),如圖1-5(1)所示,它的功能是當(dāng)
給定的條件P1成立時(shí)一,執(zhí)行A框,A框執(zhí)行完畢后,再判斷條件P是
否成立,如果仍然成立,再執(zhí)行A框,如此反復(fù)執(zhí)行A框,直到某一
次條件R不成立為止,此時(shí)不再執(zhí)行A框,從b離開(kāi)循環(huán)結(jié)構(gòu)。
(2)另一類(lèi)是直到型循環(huán)結(jié)構(gòu),如下圖所示,它的功能是先執(zhí)
行,件后判斷給定的條件P2是否成立,內(nèi)果P2仍然不成立,則繼續(xù)
執(zhí)行A框,直到某一次給定的條件P2成卜為止,此時(shí)不再執(zhí)行A框,
從b點(diǎn)離開(kāi)循環(huán)結(jié)構(gòu)。
P2?不成乂
不成立
成立
bb
當(dāng)型循環(huán)結(jié)構(gòu)直到型循環(huán)結(jié)構(gòu)
(1)(2)
例4:設(shè)計(jì)一個(gè)計(jì)算1+2+…+100的值的算法,并畫(huà)出程序框圖。
算法分析:只需要一個(gè)累加變量和一個(gè)計(jì)數(shù)變量,將累加變量的
初始值為0,計(jì)數(shù)變量的值可以從1到100。
程序框圖:
開(kāi)始
i=l
Sum=O
iWlOO?
是
輸出sum
結(jié)束
3、課堂小結(jié):
本節(jié)課主要講述了程序框圖的基本知識(shí),包括常用的圖形符號(hào)、
算法的基本邏輯結(jié)構(gòu),算法的基本邏輯結(jié)構(gòu)有三種,即順序結(jié)構(gòu)、條
件結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。其中順序結(jié)構(gòu)是最簡(jiǎn)單的結(jié)構(gòu),也是最基本的結(jié)
構(gòu),循環(huán)結(jié)構(gòu)必然包含條件結(jié)構(gòu),所以這三種基本邏輯結(jié)構(gòu)是相互支
撐的,它們共同構(gòu)成了算法的基本結(jié)構(gòu),無(wú)論怎樣復(fù)雜的邏輯結(jié)構(gòu),
都可以通過(guò)這三種結(jié)構(gòu)來(lái)表達(dá)
4、自我評(píng)價(jià):
1)設(shè)x為為一個(gè)正整數(shù),規(guī)定如下運(yùn)算:若x為奇數(shù),則求3x+2;若x
為偶數(shù),則為5x,寫(xiě)出算法,并畫(huà)出程序框圖。
2)畫(huà)出求2422+24…2m的值的程序框圖。
5、評(píng)價(jià)標(biāo)準(zhǔn):
1.解:算法如下。
S1輸入x
S2若x為奇數(shù),則輸出A=3x+2;否則輸出A=5x
S3算法結(jié)束。
程序框圖如下圖:
開(kāi)始
i=l
2、解:序框圖如下圖:
開(kāi)始
輸出p
結(jié)束
6、作業(yè):課本P11習(xí)題1.1A組2、3
1.2,輸入、輸電語(yǔ)句和賦值語(yǔ)句r第一暉時(shí))
教學(xué)目標(biāo):
知識(shí)與技能
(1)正確理解輸入語(yǔ)句、輸出語(yǔ)句、賦值語(yǔ)句的結(jié)構(gòu)。
(2)會(huì)寫(xiě)一些簡(jiǎn)單的程序。
(3)掌握賦值語(yǔ)句中的“=”的作用。
過(guò)程與方法
(1)讓學(xué)生充分地感知、體驗(yàn)應(yīng)用計(jì)算機(jī)解決數(shù)學(xué)問(wèn)題的方法;
并能初步操作、模仿。
(2)通過(guò)對(duì)現(xiàn)實(shí)生活情境的探究,嘗試設(shè)計(jì)出解決問(wèn)題的程序,
理解邏輯推理的數(shù)學(xué)方法。
情感態(tài)度與價(jià)值觀(guān)
通過(guò)本節(jié)內(nèi)容的學(xué)習(xí),使我們認(rèn)識(shí)到計(jì)算機(jī)與人們生活密
切相關(guān),增強(qiáng)計(jì)算機(jī)應(yīng)用意識(shí),提高學(xué)生學(xué)習(xí)新知識(shí)的興趣。
重點(diǎn)與難點(diǎn)
重點(diǎn):正確理解輸入語(yǔ)句、輸出語(yǔ)句、賦值語(yǔ)句的作用。
難點(diǎn):準(zhǔn)確寫(xiě)出輸入語(yǔ)句、輸出語(yǔ)句、賦值語(yǔ)句。
學(xué)法與教學(xué)用具
計(jì)算機(jī)、圖形計(jì)算器
教學(xué)設(shè)想
【創(chuàng)設(shè)情境】
在現(xiàn)代社會(huì)里,計(jì)算機(jī)已經(jīng)成為人們?nèi)粘I詈凸ぷ鞑豢扇?/p>
少的工具,如:聽(tīng)MP3,看電影,玩游戲,打字排版,畫(huà)卡通畫(huà),
處理數(shù)據(jù)等等,那么,計(jì)算機(jī)是怎樣工作的呢?
計(jì)算機(jī)完成任何一項(xiàng)任務(wù)都需要算法,但是,我們用自然語(yǔ)
言或程序框圖描述的算法,計(jì)算機(jī)是無(wú)法“看得懂,聽(tīng)得見(jiàn)”的。
因此還需要將算法用計(jì)算機(jī)能夠理解的程序設(shè)計(jì)語(yǔ)言
(programminglanguage)翻譯成計(jì)算機(jī)程序。
程序設(shè)計(jì)語(yǔ)言有很多種。如BASIC,Foxbase,C語(yǔ)言,C++,
J++,VB等。為了實(shí)現(xiàn)算法中的三種基本的邏輯結(jié)構(gòu):順序結(jié)構(gòu)、
條件結(jié)構(gòu)和循環(huán)結(jié)構(gòu),各種程序設(shè)計(jì)語(yǔ)言中都包含下列基本的算
法語(yǔ)句:
輸入語(yǔ)句輸出語(yǔ)句賦值語(yǔ)句條件語(yǔ)句循環(huán)語(yǔ)句
這就是這一節(jié)所要研究的主要內(nèi)容——基本算法語(yǔ)句。今天,
我們先一起來(lái)學(xué)習(xí)輸入、輸出語(yǔ)句和賦值語(yǔ)
句。(板出課題)!----4—
I語(yǔ)句n
【探究新知】,I——r+—
;語(yǔ)句n+1
我們知道,順序結(jié)構(gòu)是任何一個(gè)算法都離不開(kāi)的基本結(jié)構(gòu)。
輸入、輸出語(yǔ)句和賦值語(yǔ)句基本上對(duì)應(yīng)于算法中的順序結(jié)構(gòu)。(如
右圖)計(jì)算機(jī)從上而下按照語(yǔ)句排列的順序執(zhí)行這些語(yǔ)句。
輸入語(yǔ)句和輸出語(yǔ)句分別用來(lái)實(shí)現(xiàn)算法的輸入信息,輸出結(jié)
果的功能。如下面的例子:
用描點(diǎn)法作函數(shù)y=V+3x2—24x+30的圖象時(shí)一,需要求出自變
量與函數(shù)的一組對(duì)應(yīng)值。編寫(xiě)程序,分別計(jì)算當(dāng)
x=-5,-4,-3,-2,-1,0,1,2,3,4,5時(shí)的函數(shù)值。
程序:(教師可在課前準(zhǔn)備好該程序,教學(xué)中直接調(diào)用運(yùn)行)
INPUT“x=”;x
y=xA3+3*xA2-24*x+30
PRINTx
PRINTy
(學(xué)生先不必深究該程序如何得來(lái),只要求懂得上機(jī)操作,模仿
編寫(xiě)程序,通過(guò)運(yùn)行自己編寫(xiě)的程序發(fā)現(xiàn)問(wèn)題所在,進(jìn)一步提高
學(xué)生的模仿能力。)
K提問(wèn)也在這個(gè)程序中,你們覺(jué)得哪些是輸入語(yǔ)句、輸出語(yǔ)句和
賦值語(yǔ)句呢?(同學(xué)們互相交流、議論、猜想、概括出結(jié)
論。提示:“input”和“print”的中文意思等)
(一)輸入語(yǔ)句
在該程序中的第1行中的INPUT語(yǔ)句就是輸入語(yǔ)句。這個(gè)
語(yǔ)句的一般格式是:
INPUT“提示內(nèi)容”;變量
其中,“提示內(nèi)容”一般是提示用戶(hù)輸入什么樣的信息。如每
次運(yùn)行上述程序時(shí),依次輸入-5,-4,-3,-2,-1,0,1,2,3,
4,5,計(jì)算機(jī)每次都把新輸入的值賦給變量“x”,并按“x”新獲
得的值執(zhí)行下面的語(yǔ)句。
INPUT語(yǔ)句不但可以給單個(gè)變量賦值,還可以給多個(gè)變量賦
值,其格式為:
INPUT”提示內(nèi)容1,提示內(nèi)容2,提示內(nèi)容3,…”;變量1,變量2,變量3,…
例如,輸入一個(gè)學(xué)生數(shù)學(xué),語(yǔ)文,英語(yǔ)三門(mén)課的成績(jī),可以
寫(xiě)成:
INPUT“數(shù)學(xué),語(yǔ)文,英語(yǔ)”;a,b,c
注:①“提示內(nèi)容”與變量之間必須用分號(hào)隔開(kāi)。
②各“提示內(nèi)容”之間以及各變量之間必須用逗號(hào)“,”隔開(kāi)。
但最后的變量的后面不需要。
(-)輸出語(yǔ)句
在該程序中,第3行和第4行中的PRINT語(yǔ)句是輸出語(yǔ)句。
它的一般格式是:
PRINT"提示內(nèi)容”;表達(dá)式
同輸入語(yǔ)句一樣,表達(dá)式前也可以有“提示內(nèi)容”。例如下面
的語(yǔ)句可以輸出斐波那契數(shù)列:
PRINT“TheFibonacciProgressionis:";
11235813213455“
此時(shí)屏幕上1示fi------
TheFibonacciProgressionis:11235813
213455…
輸出語(yǔ)句的用途:
(1)輸出常量,變量的值和系統(tǒng)信息。(2)輸出數(shù)值
計(jì)算的結(jié)果。
K思考》在1.1.2中程序框圖中的輸入框,輸出框的內(nèi)容怎樣用
輸入語(yǔ)句、輸出語(yǔ)句來(lái)表達(dá)?(學(xué)生討論、交流想法,然
后請(qǐng)學(xué)生作答)
參考答案:
輸入框:INPUT”請(qǐng)輸入需判斷的整數(shù)n=";n
輸出框:PRINTn;“是質(zhì)數(shù)。”
PRINTn;"不是質(zhì)數(shù)?!?/p>
(三)賦值語(yǔ)句
用來(lái)表明賦給某一個(gè)變量一個(gè)具體的確定值的語(yǔ)句。
除了輸入語(yǔ)句,在該程序中第2行的賦值語(yǔ)句也可以給變量
提供初值。它的一般格式是:
變量=表達(dá)式
賦值語(yǔ)句中的叫做賦值號(hào)。
賦值語(yǔ)句的作用:先計(jì)算出賦值號(hào)右邊表達(dá)式的值,然后把這
個(gè)值賦給賦值號(hào)左邊的變量,使該變量的值
等于表達(dá)式的值。
注:①賦值號(hào)左邊只能是變量名字,而不能是表達(dá)式。如:
2=X是錯(cuò)誤的。
②賦值號(hào)左右不能對(duì)換。如“A=B”“B=A”的含義運(yùn)行
結(jié)果是不同的。
③不能利用賦值語(yǔ)句進(jìn)行代數(shù)式的演算。(如化簡(jiǎn)、因
式分解、解方程等)
④賦值號(hào)“=”與數(shù)學(xué)中的等號(hào)意義不同。
K思考》在LL2中程序框圖中的輸入框,哪些語(yǔ)句可以用賦值
語(yǔ)句表達(dá)?并寫(xiě)出相應(yīng)的賦值語(yǔ)句。(學(xué)生思考討論、交
流想法。)
【例題精析】
K例1兒編寫(xiě)程序,計(jì)算一個(gè)學(xué)生數(shù)學(xué)、語(yǔ)文、英語(yǔ)三門(mén)課
的平均成績(jī)。
分析:先寫(xiě)出算法,畫(huà)出程序框圖,再進(jìn)行編程。
算法:程序:
K例2%給一個(gè)變量重復(fù)賦值。
程序:
A=10
A=A+10
PRINTA
END
[變式引申]:在此程序的基礎(chǔ)上,設(shè)計(jì)一個(gè)程序,要求最后A
的輸出值是30。
(該變式的設(shè)計(jì)意圖是學(xué)生加深對(duì)重復(fù)賦值的理
解)
程序:
K例3兒交換兩個(gè)變量A和B的值,并輸出交換前后的值。
分析:引入一個(gè)中間變量X,將A的值賦予X,又將B的值賦予
A,再將X的值賦予B,從而達(dá)到交換A,B的值。(比如
交換裝滿(mǎn)水的兩個(gè)水桶里的水需要再找一個(gè)空桶)
程序:fINPUTA
INPUTB
PRINTA,B
X=A
A=B
B=X
PRINTA,B
END
K補(bǔ)例》編寫(xiě)一個(gè)程序,要求輸入一個(gè)圓的半徑,便能輸出該
圓的周長(zhǎng)和面積。(乃取3.14)
分析:設(shè)圓的半徑為R,則圓的周長(zhǎng)為C=,面積為S=兀R,
可以利用順序結(jié)構(gòu)中的INPUT語(yǔ)句,PRINT語(yǔ)句和賦
值語(yǔ)句設(shè)計(jì)程序。
程序:
INPUT“半徑為R=";R
C=2*3.14*R
S=3.14*RA2
PRINT“該圓的周長(zhǎng)為:”;C
PRINT“該圓的面積為:”;S
【課堂精練】
P15練習(xí)1.2.3
參考答案:
1.程序:INPUT"請(qǐng)輸入華氏溫度:”;x
y=(x-32)*5/9
PRINT“華氏溫度:”;x
PRINT“攝氏溫度:";y
END
K提問(wèn)兒如果要求輸入一個(gè)攝氏溫度,輸出其相應(yīng)的華氏
溫度,又該如何設(shè)計(jì)程序?(學(xué)生課后思考,討論
完成)
2.程序:INPUT"請(qǐng)輸入a(awO)=";a
INPUT“請(qǐng)輸入b(b/0)=";b
X=a+b
Y=a-b
Z=a*b
Q=a/b
PRINTa,b
PRINTX,Y,Z,Q
END
3.程序:p=(2+3+4)/2
t=p*(p-2)*(p-3)*(p-4)
s=SQR(t)
PRINT“該三角形的面積為:”;s
END
注:SQR()是函數(shù)名,用來(lái)求某個(gè)數(shù)的平方根。
【課堂小結(jié)】
本節(jié)課介紹了輸入語(yǔ)句、輸出語(yǔ)句和賦值語(yǔ)句的結(jié)構(gòu)特點(diǎn)
及聯(lián)系。掌握并應(yīng)用輸入語(yǔ)句,輸出語(yǔ)句,賦值語(yǔ)句編寫(xiě)一些
簡(jiǎn)單的程序解決數(shù)學(xué)問(wèn)題,特別是掌握賦值語(yǔ)句中“=”的作用
及應(yīng)用。編程一般的步驟:先寫(xiě)出算法,再進(jìn)行編程。我們要
養(yǎng)成良好的習(xí)慣,也有助于數(shù)學(xué)邏輯思維的形成。
【評(píng)價(jià)設(shè)計(jì)】
1.P23習(xí)題1.2A組1(2)、2
2.試對(duì)生活中某個(gè)簡(jiǎn)單問(wèn)題或是常見(jiàn)數(shù)學(xué)問(wèn)題,利用所學(xué)基
本算法語(yǔ)句等知識(shí)來(lái)解決自己所提出的問(wèn)題。要求寫(xiě)出算
法,畫(huà)程序框圖,并寫(xiě)出程序設(shè)計(jì)。
I.2.2-I.2.3條件語(yǔ)句和循環(huán)語(yǔ)句(第二、三部時(shí))
教學(xué)目標(biāo):
知識(shí)與技能
(1)正確理解條件語(yǔ)句和循環(huán)語(yǔ)句的概念,并掌握其結(jié)構(gòu)的
區(qū)別與聯(lián)系。
(2)會(huì)應(yīng)用條件語(yǔ)句和循環(huán)語(yǔ)句編寫(xiě)程序。
過(guò)程與方法
經(jīng)歷對(duì)現(xiàn)實(shí)生活情境的探究,認(rèn)識(shí)到應(yīng)用計(jì)算機(jī)解決數(shù)學(xué)
問(wèn)題方便簡(jiǎn)捷,促進(jìn)發(fā)展學(xué)生邏輯思維能力
情感態(tài)度與價(jià)值觀(guān)
了解條件語(yǔ)句在程序中起判斷轉(zhuǎn)折作用,在解決實(shí)際問(wèn)題
中起決定作用。深刻體會(huì)到循環(huán)語(yǔ)句在解決大量重復(fù)問(wèn)題中起
重要作用。減少大量繁瑣的計(jì)算。通過(guò)本小節(jié)內(nèi)容的學(xué)習(xí),有
益于我們養(yǎng)成嚴(yán)謹(jǐn)?shù)臄?shù)學(xué)思維以及正確處理問(wèn)題的能力。
重點(diǎn)與難點(diǎn)
重點(diǎn):條件語(yǔ)句和循環(huán)語(yǔ)句的步驟、結(jié)構(gòu)及功能。
難點(diǎn):會(huì)編寫(xiě)程序中的條件語(yǔ)句和循環(huán)語(yǔ)句。
學(xué)法與教學(xué)用具
計(jì)算機(jī)、圖形計(jì)算器
教學(xué)設(shè)想
【創(chuàng)設(shè)情境】
試求自然數(shù)1+2+3+.......+99+100的和。
顯然大家都能準(zhǔn)確地口算出它的答案:5050o而能不能將
這項(xiàng)計(jì)算工作交給計(jì)算機(jī)來(lái)完成呢?而要編程,以我們前面所
學(xué)的輸入、輸出語(yǔ)句和賦值語(yǔ)句還不能滿(mǎn)足“我們?nèi)找嬖鲩L(zhǎng)的
物質(zhì)需要”,因此,還需要進(jìn)一步學(xué)習(xí)基本算法語(yǔ)句中的另外兩
種:條件語(yǔ)句和循環(huán)語(yǔ)句(板出課題)
【探究新知】
(一)條件語(yǔ)句
算法中的條件結(jié)構(gòu)是由條件語(yǔ)句來(lái)表達(dá)的,是處理?xiàng)l件分
支邏輯結(jié)構(gòu)的算法語(yǔ)句。它的一般格式是:(IF-THEN-ELSE
格式)
IF條件THEN
語(yǔ)句1
ELSE
語(yǔ)句2
ENDIF
當(dāng)計(jì)算機(jī)執(zhí)行上述語(yǔ)句時(shí)',首先對(duì)IF后的條件進(jìn)行判斷,
如果條件符合,就執(zhí)行THEN后的語(yǔ)句1,否則執(zhí)行ELSE后的
語(yǔ)句2。其對(duì)應(yīng)的程序框圖為:(如上右圖)
在某些情況下,也可以只使用IF-THEN語(yǔ)句:(即
IFTHEN格式)
計(jì)算機(jī)執(zhí)行這種形式的條件語(yǔ)句時(shí),也是首先對(duì)IF后的條
件進(jìn)行判斷,如果條件符合,就執(zhí)行THEN后的語(yǔ)句,如果條
件不符合,則直接結(jié)束該條件語(yǔ)句,轉(zhuǎn)而執(zhí)行其他語(yǔ)句。其對(duì)
應(yīng)的程序框圖為:(如上右圖)
條件語(yǔ)句的作用:在程序執(zhí)行過(guò)程中,根據(jù)判斷是否滿(mǎn)足
約定的條件而決定是否需要轉(zhuǎn)換到何處去。需要計(jì)算機(jī)按條件
進(jìn)行分析、比較、判斷,并按判斷后的不同情況進(jìn)行不同的處
理。
【例題精析】
K例編寫(xiě)程序,輸入一元二次方程ax2+fct+c=0的系數(shù),輸
出它的實(shí)數(shù)根。
分析:先把解決問(wèn)題的思路用程序框圖表示出來(lái),然后再根據(jù)
程序框圖給出的算法步驟,逐步把算法用對(duì)應(yīng)的程序語(yǔ)
句表達(dá)出來(lái)。
算法分析:我們知道,若判另IJ式△=/-4ac>0,原方程有兩個(gè)不
A<0,原方程沒(méi)有實(shí)數(shù)根。也就是說(shuō),在求解方程之前,需要首
先判斷判別式的符號(hào)。因此,這個(gè)過(guò)程可以用算法中的條件結(jié)構(gòu)
來(lái)實(shí)現(xiàn)。
又因?yàn)榉匠痰膬蓚€(gè)根有相同的部分,為了避免重復(fù)計(jì)算,可
以在計(jì)算事和x,之前,先計(jì)算p=-包,4=如。程序框圖:(參照
2a2a
課本匕)
程序:(如右圖所示)
注:SQR()和ABS()是兩個(gè)函數(shù),分別用來(lái)求某個(gè)數(shù)的
平方根和絕對(duì)值。
即SQR(x)=4,ABS。)*(產(chǎn)女
卜x(x<0).
K例2兒編寫(xiě)程序,使得任意輸入的3個(gè)整數(shù)按從大到小的順
序輸出。
IFb>a
算法分析:用a,b,c表示輸t=a
a=b
入的3個(gè)整數(shù);為了節(jié)約變量,b=t
ENDIF
把它們重新排列后,仍用a,b,IFc>a
c表示,并使aNbec.具體操
作步驟如下。ENDIF
IFc>b
第一步:輸入3個(gè)整數(shù)a,b,t=b
b=c
c=t
ENDIF
第二步:將a與b比較,并把PRINTa,b
小者賦給b,大者賦給a.
第三步:將a與c比較.并把小者賦給c,大者賦給a,此時(shí)a
已是三者中最大的。
第四步:將b與c比較,并把小者賦給c,大者賦給b,此時(shí)a,
b,c已按從大到小的順序排列好。
第五步:按順序輸出a,b,c.
程序框圖:(參照課本
程序:(如右框圖所示)
K補(bǔ)例為鐵路部門(mén)托運(yùn)行李的收費(fèi)方法如下:
y是收費(fèi)額(單位:元),x是行李重量(單位:kg),當(dāng)
0VxW20時(shí),按0.35元/kg收費(fèi),當(dāng)x>20kg時(shí),20kg的部
分按0.35元/kg,超出20kg的部分,則按0.65元/kg收費(fèi),
請(qǐng)根據(jù)上述收費(fèi)方法編寫(xiě)程序。
/O.35x,0<x<20,
分析:首先由題意得:>一'0.35x20+0.65(x-20),x>20.該函數(shù)
是個(gè)分段函數(shù)。需要對(duì)行李重量作出判斷,因此,這個(gè)
過(guò)程可以用算法中的條件結(jié)構(gòu)來(lái)實(shí)現(xiàn)。
程序:INPUT”請(qǐng)輸入旅客行李的重量(kg)x=";x
IFx>0ANDx<=20THEN
y=O.35*x
ELSE
y=0.35*20+0.65*(x-20)
ENDIF
PRINT“該旅客行李托運(yùn)費(fèi)為:”;y
END
【課堂精練】
1.a練習(xí)2.(題略)
分析:如果有兩個(gè)或是兩個(gè)以上的并列條件時(shí),用“AND”
把它們連接起來(lái)。
2.P20練習(xí)1.(題略)
參考答案:INPUT"請(qǐng)輸入三個(gè)正數(shù)a,b,c=";a,b,
c
IFa+b>cANDa+c>bANDb+c>a
THEN
PRINT"以下列三個(gè)數(shù):";a,b,c,
“可以構(gòu)成三角形?!?/p>
ELSE
PRINT"以下列三個(gè)數(shù):";a,b,c,
“不可以構(gòu)成三角形!”
ENDIF
END
(二)循環(huán)語(yǔ)句
算法中的循環(huán)結(jié)構(gòu)是由循環(huán)語(yǔ)句來(lái)實(shí)現(xiàn)的。對(duì)應(yīng)于程序框
循環(huán)體
圖中的兩種循環(huán)結(jié)構(gòu),一般程序設(shè)計(jì)語(yǔ)言中也有當(dāng)型(WHILE
型)和直到型(UNTIL型)兩種語(yǔ)句結(jié)構(gòu)。即WHILE語(yǔ)句和
UNTIL語(yǔ)句。
(1)WHILE語(yǔ)句的一般格式是:
WHILE條件
循環(huán)體
WEND
其中循環(huán)體是由計(jì)算機(jī)反復(fù)執(zhí)行的一組語(yǔ)句構(gòu)成的。
WHLIE后面的“條件”是用于控制計(jì)算機(jī)執(zhí)行循環(huán)體或跳出循
環(huán)體的。
當(dāng)計(jì)算機(jī)遇到WHILE語(yǔ)句時(shí),先判斷條件的真假,如果條
件符合,就執(zhí)行WHILE與WEND之間的循環(huán)體;然后再檢查
上述條件,如果條件仍符合,再次執(zhí)行循環(huán)體,這個(gè)過(guò)程反復(fù)
進(jìn)行,直到某一次條件不符合為止。這時(shí),計(jì)算機(jī)將不執(zhí)行循
環(huán)體,直接跳到WEND語(yǔ)句后,接著執(zhí)行WEND之后的語(yǔ)句。
因此,當(dāng)型循環(huán)有時(shí)也稱(chēng)為“前測(cè)試型”循環(huán)。其對(duì)應(yīng)的程序
結(jié)構(gòu)框圖為:(如上右圖)
(2)UNTIL語(yǔ)句的一般格式是;<
;循環(huán)體
i!
DO
循環(huán)體
LOOPUNTIL條件
其對(duì)應(yīng)的程序結(jié)構(gòu)框圖為:(如上右圖)
K思考》直到型循環(huán)又稱(chēng)為“后測(cè)試型”循環(huán),參照其直到型循
環(huán)結(jié)構(gòu)對(duì)應(yīng)的程序框圖,說(shuō)說(shuō)計(jì)算機(jī)是按怎樣的順序執(zhí)
行UNTIL語(yǔ)句的?(讓學(xué)生模仿執(zhí)行WHILE語(yǔ)句的表
述)
從UNTIL型循環(huán)結(jié)構(gòu)分析,計(jì)算機(jī)執(zhí)行該語(yǔ)句時(shí)一,先
執(zhí)行一次循環(huán)體,然后進(jìn)行條件的判斷,如果條件不滿(mǎn)足,
繼續(xù)返回執(zhí)行循環(huán)體,然后再進(jìn)行條件的判斷,這個(gè)過(guò)程反
復(fù)進(jìn)行,直到某一次條件滿(mǎn)足時(shí),不再執(zhí)行循環(huán)體,跳到
LOOPUNTIL語(yǔ)句后執(zhí)行其他語(yǔ)句,是先執(zhí)行循環(huán)體后進(jìn)
行條件判斷的循環(huán)語(yǔ)句。
K提問(wèn)兒通過(guò)對(duì)照,大家覺(jué)得WHILE型語(yǔ)句與UNTIL型語(yǔ)句
之間有什么區(qū)別呢?(讓學(xué)生表達(dá)自己的感受)
區(qū)別:在WHILE語(yǔ)句中,是當(dāng)條件滿(mǎn)足時(shí)執(zhí)行循環(huán)體,而在
UNTIL語(yǔ)句中,是當(dāng)條件不滿(mǎn)足時(shí)執(zhí)行循環(huán)體。
【例題精析】
K例3%編寫(xiě)程序,計(jì)算自然數(shù)1+2+3+……+99+100的和。
分析:這是一個(gè)累加問(wèn)題。我們可以用WHILE型語(yǔ)句,也可以
用UNTIL型語(yǔ)句。由此看來(lái),解決問(wèn)題的方法不是惟一的,
當(dāng)然程序的設(shè)計(jì)也是有多種的,只是程序簡(jiǎn)單與復(fù)雜的問(wèn)題。
程
序:sum=0sum=0
WHLIEi<=100DO
WHILEsum=sum+isum=sum+i
i=i+li=i+l
型:WENDLOOPUNTILi>100
PRINTsum
UNTIL型:END
K例4》根據(jù)1.1.2中的圖1.1-2,將程序框圖轉(zhuǎn)化為程序語(yǔ)句。
分析:仔細(xì)觀(guān)察,該程序框圖中既有條件結(jié)構(gòu),又有循環(huán)結(jié)構(gòu)。
程序:
INPUT
flag=l
IFn>2THEN
d=2
WHILEd<=n-lANDflag=l
IFnMODd=0THEN
flag=O
ELSE
d=d+l
ENDIF
WEND
ELSE
IFflag=lTHEN
PRINTn;“是質(zhì)數(shù)?!?/p>
ELSE
PRINTn;"不是質(zhì)數(shù)?!?/p>
ENDIF
ENDIF
K思考》上述判定質(zhì)數(shù)的算法是否還能有所改進(jìn)?(讓學(xué)生課
后思考。)
K補(bǔ)例兒某紡織廠(chǎng)1997年的生產(chǎn)總值為300萬(wàn)元,如果年生產(chǎn)
增產(chǎn)率為5%,計(jì)算最早在哪一年生產(chǎn)總值超過(guò)400萬(wàn)
元。
分析:從1997年底開(kāi)始,經(jīng)過(guò)x年后生產(chǎn)總值為300X(1+5
%)x,可將1997年生產(chǎn)總值賦給變量a,然后對(duì)其進(jìn)行累
乘,用n作為計(jì)數(shù)變量進(jìn)行循環(huán),直到a的值超過(guò)400萬(wàn)
元為止。
解:
程序框圖為:程序:
a=300
p=l.05
n=1997
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025私人房產(chǎn)合同范文
- 2025公務(wù)員公共基礎(chǔ)知識(shí)民法考點(diǎn)解析合同法解釋
- 2025門(mén)頭制作安裝合同
- 2025連鎖藥店?duì)I銷(xiāo)托管合同范本
- 2025標(biāo)準(zhǔn)商品房買(mǎi)賣(mài)合同模板范本
- 第一單元 語(yǔ)文園地 教學(xué)實(shí)錄-2024-2025學(xué)年六年級(jí)上冊(cè)語(yǔ)文統(tǒng)編版
- 上海交通職業(yè)技術(shù)學(xué)院《自然辯證法概論自然辯證法概論》2023-2024學(xué)年第一學(xué)期期末試卷
- 校園安全教育:假期注意事項(xiàng)
- 上海行健職業(yè)學(xué)院《實(shí)驗(yàn)室生物安全培訓(xùn)》2023-2024學(xué)年第一學(xué)期期末試卷
- 上海海關(guān)學(xué)院《施工圖規(guī)范》2023-2024學(xué)年第一學(xué)期期末試卷
- 醫(yī)學(xué)英語(yǔ)閱讀二分冊(cè)翻譯及答案-參考
- 市政道路擴(kuò)建工程文明施工和安全生產(chǎn)防護(hù)措施
- 結(jié)構(gòu)化面試的試題及答案
- 新一代信息技術(shù)導(dǎo)論-教案-1章 新一代信息技術(shù)概述
- 2024秋期國(guó)家開(kāi)放大學(xué)專(zhuān)科《監(jiān)督學(xué)》一平臺(tái)在線(xiàn)形考(形成性考核一至四)試題及答案
- GB/T 15822.1-2024無(wú)損檢測(cè)磁粉檢測(cè)第1部分:總則
- QC080000培訓(xùn)資料課件
- 統(tǒng)編版語(yǔ)文二年級(jí)上冊(cè)口語(yǔ)交際做手工 公開(kāi)課一等獎(jiǎng)創(chuàng)新教案
- 譯林版六年級(jí)上冊(cè)英語(yǔ)期末復(fù)習(xí)之填詞適當(dāng)形式
- 線(xiàn)性代數(shù)(上海電力大學(xué))智慧樹(shù)知到答案2024年上海電力大學(xué)
- 2024年人教版小學(xué)四年級(jí)信息技術(shù)(上冊(cè))期末試卷及答案
評(píng)論
0/150
提交評(píng)論