版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第一章算法初步
一、課標(biāo)要求:
1、本章的課標(biāo)要求包括算法的含義、程序框圖、基本算法語句,
通過閱讀中國古代教學(xué)中的算法案例,體會中國古代數(shù)學(xué)世界數(shù)學(xué)發(fā)
展的貢獻(xiàn)。
2、算法就是解決問題的步驟,算法也是數(shù)學(xué)及其應(yīng)用的重要組
成部分,是計(jì)算機(jī)科學(xué)的基礎(chǔ),利用計(jì)算機(jī)解決問需要算法,在日常
生活中做任何事情也都有算法,當(dāng)然我們更關(guān)心的是計(jì)算機(jī)的算法,
計(jì)算機(jī)可以解決多類信息處理問題,但人們必須事先用計(jì)算機(jī)熟悉的
語言,也就是計(jì)算能夠理解的語言(即程序設(shè)計(jì)語言)來詳細(xì)描述解
決問題的步驟,即首先設(shè)計(jì)程序,對稍復(fù)雜一些的問題,直接寫出解
決該問題的程序是困難的,因此,我們要首先研究解決問題的算法,
再把算法轉(zhuǎn)化為程序,所以算法設(shè)計(jì)是使用計(jì)算機(jī)解決具體問題的一
個極為重要的環(huán)節(jié)。
3、通過對解決具體問題的過程與步驟的分析(如二元一次方程
組的求解等問題),體會算法的思想,了解算法的含義。理解程序框
圖的三種基本邏輯結(jié)構(gòu):順序結(jié)構(gòu)、條件結(jié)構(gòu)、循環(huán)結(jié)構(gòu)。理解并掌
握幾種基本的算法語句一一輸入語句、輸出語句、賦值語句、條件語
句、循環(huán)語句。進(jìn)一步體會算法的基本思想。
4、本章的重點(diǎn)是體會算法的思想,了解算法的含義,通過模仿、
操作、探索,經(jīng)過通過設(shè)計(jì)程序框圖解決問題的過程。點(diǎn)是在具體問
題的解決過程中,理解三種基本邏輯結(jié)構(gòu),經(jīng)歷將具體問題的程序框
圖轉(zhuǎn)化為程序語句的過程,理解幾種基本的算法語句。
二、編寫意圖與特色:
算法是數(shù)學(xué)及其應(yīng)用的重要組成部分,是計(jì)算科學(xué)的重要基礎(chǔ)。
隨著現(xiàn)代信息技術(shù)飛速發(fā)展,算法在科學(xué)技術(shù)、社會發(fā)展中發(fā)揮著越
來越大的作用,并日益融入社會生活的許多方面,算法思想已經(jīng)成為
現(xiàn)代人應(yīng)具備的一種數(shù)學(xué)素養(yǎng)。需要特別指出的是,中國古代數(shù)學(xué)中
蘊(yùn)涵了豐富的算法思想。在本模塊中,學(xué)生將在義務(wù)教育階段初步感
受算法思想的基礎(chǔ)上,結(jié)合對具體數(shù)學(xué)實(shí)例的分析,體驗(yàn)程序框圖在
解決問題中的作用;通過模仿、操作、探索,學(xué)習(xí)設(shè)計(jì)程序框圖表達(dá)
解決問題的過程;體會算法的基本思想以及算法的重要性和有效性,
發(fā)展有條理的思考與表達(dá)的能力,提高邏輯思維能力。
1、結(jié)合熟悉的算法,把握算法的基本思想,學(xué)會用自然語言來
描述算法。
2、通過模仿、操作和探索,經(jīng)歷設(shè)計(jì)程序流程圖表達(dá)解決問題
的過程。在具體問題的解決過程中理解程序流程圖的三種基本邏輯結(jié)
構(gòu):順序結(jié)構(gòu)、條件結(jié)構(gòu)、循環(huán)結(jié)構(gòu)。
3、通過實(shí)際問題的學(xué)習(xí),了解構(gòu)造算法的基本程序。
4、經(jīng)歷將具體問題的程序流程圖轉(zhuǎn)化為程序語句的過程,理解
幾種基本算法語句一一輸入語句、輸出語句、賦值語句、條件語句、
循環(huán)語句,體會算法的基本思想。
5、需要注意的問題
1)從熟知的問題出發(fā),體會算法的程序化思想,而不是簡單呈
現(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)容及課時安排:
1.1算法與程序框圖(約2課時)
1.2基本算法語句(約3課時)
1.3算法案例(約5課時)
復(fù)習(xí)與小結(jié)(約2課時)
四、評價建議
1.重視對學(xué)生數(shù)學(xué)學(xué)習(xí)過程的評價
關(guān)注學(xué)生在數(shù)學(xué)語言的學(xué)習(xí)過程中,是否對用集合語言描述數(shù)學(xué)
和現(xiàn)實(shí)生活中的問題充滿興趣;在學(xué)習(xí)過程中,能否體會集合語言準(zhǔn)
確、簡潔的特征;是否能積極、主動地發(fā)展自己運(yùn)用數(shù)學(xué)語言進(jìn)行交
流的能力。
2.正確評價學(xué)生的數(shù)學(xué)基礎(chǔ)知識和基本技能
關(guān)注學(xué)生在本章(節(jié))及今后學(xué)習(xí)中,讓學(xué)生集中學(xué)習(xí)算法的初
步知識,主要包括算法的基本結(jié)構(gòu)、基本語句、基本思想等。算法思
想將貫穿高中數(shù)學(xué)課程的相關(guān)部分,在其他相關(guān)部分還將進(jìn)一步學(xué)習(xí)
算法
1.1.1算法的概念
一、教學(xué)目標(biāo):
1、知識與技能:(1)了解算法的含義,體會算法的思想。(2)能夠
用自然語言敘述算法。(3)掌握正確的算法應(yīng)滿足的要求。(4)會寫
出解線性方程(組)的算法。(5)會寫出一個求有限整數(shù)序列中的最
大值的算法。(6)會應(yīng)用Scilab求解方程組。
2、過程與方法:通過求解二元一次方程組,體會解方程的一般性步
驟,從而得到一個解二元一次方程組的步驟,這些步驟就是算法,不
同的問題有不同的算法。由于思考問題的角度不同,同一個問題也可
能有多個算法,能模仿求解二元一次方程組的步驟,寫出一個求有限
整數(shù)序列中的最大值的算法。
3、情感態(tài)度與價值觀:通過本節(jié)的學(xué)習(xí),使我們對計(jì)算機(jī)的算法語
言有一個基本的了解,明確算法的要求,認(rèn)識到計(jì)算機(jī)是人類征服自
然的一各有力工具,進(jìn)一步提高探索、認(rèn)識世界的能力。
二、重點(diǎn)與難點(diǎn):
重點(diǎn):算法的含義、解二元一次方程組和判斷一個數(shù)為質(zhì)數(shù)的算
法設(shè)計(jì)。
難點(diǎn):把自然語言轉(zhuǎn)化為算法語言。
三、學(xué)法與教學(xué)用具:
學(xué)法:1、寫出的算法,必須能解決一類問題(如:判斷一個整數(shù)
n(n>l)是否為質(zhì)數(shù);求任意一個方程的近似解;……),并且能夠重
復(fù)使用。
2、要使算法盡量簡單、步驟盡量少。
3、要保證算法正確,且計(jì)算機(jī)能夠執(zhí)行,如:讓計(jì)算機(jī)計(jì)算1
x2x3x4x5是可以做到的,但讓計(jì)算機(jī)去執(zhí)行“倒一杯水”“替我
理發(fā)”等則是做不到的。
教學(xué)用具:電腦,計(jì)算器,圖形計(jì)算器
四、教學(xué)設(shè)想:
1、創(chuàng)設(shè)情境:
算法作為一個名詞,在中學(xué)教科書中并沒有出現(xiàn)過,我們在基礎(chǔ)
教育階段還沒有接觸算法概念。但是我們卻從小學(xué)就開始接觸算法,
熟悉許多問題的算法。如,做四則運(yùn)算要先乘除后加減,從里往外脫
括弧,豎式筆算等都是算法,至于乘法口訣、珠算口訣更是算法的具
體體現(xiàn)。我們知道解一元二次方程的算法,求解一元一次不等式、一
元二次不等式的算法,解線性方程組的算法,求兩個數(shù)的最大公因數(shù)
的算法等。因此,算法其實(shí)是重要的數(shù)學(xué)對象。
2、探索研究
算法(algorithm)一詞源于算術(shù)(algorism),即算術(shù)方法,是指
一個由已知推求未知的運(yùn)算過程。后來,人們把它推廣到一般,把進(jìn)
行某一工作的方法和步驟稱為算法。
廣義地說,算法就是做某一件事的步驟或程序。菜譜是做菜肴的
算法,洗衣機(jī)的使用說明書是操作洗衣機(jī)的算法,歌譜是一首歌曲的
算法。在數(shù)學(xué)中,主要研究計(jì)算機(jī)能實(shí)現(xiàn)的算法,即按照某種機(jī)械程
序步驟一定可以得到結(jié)果的解決問題的程序。比如解方程的算法、函
數(shù)求值的算法、作圖的算法,等等。
3、例題分析:
例1任意給定一個大于1的整數(shù)n,試設(shè)計(jì)一個程序或步驟對n
是否為質(zhì)數(shù)撤出判定。
算法分析:根據(jù)質(zhì)數(shù)的定義,很容易設(shè)計(jì)出下面的步驟:
第一步:判斷n是否等于2,若n=2,則n是質(zhì)數(shù);若n>2,則執(zhí)
行第二步。
第二步:依次從2至(n-L)檢驗(yàn)是不是n的因數(shù),即整除n的
數(shù),若有這樣的數(shù),則n不是質(zhì)數(shù);若沒有這樣的數(shù),則n是質(zhì)數(shù)。
這是判斷一個大于1的整數(shù)n是否為質(zhì)數(shù)的最基本算法。
例2用二分法設(shè)計(jì)一個求議程X?-2=0的近似根的算法。
算法分析:回顧二分法解方程的過程,并假設(shè)所求近似根與準(zhǔn)確
解的差的絕對值不超過0.005,則不難設(shè)計(jì)出以下步驟:
第一步:令f(x)=x,-2。因?yàn)閒(1X0,f(2)>0,所以設(shè)x1=l,X2=2O
第二步:令m=(Xi+xJ/2,判斷f(m)是否為0,若則,則m為所長;
若否,則繼續(xù)判斷f(xj?f(m)大于。還是小于0。
第三步:若f(X1)-f(m)>0,則令x1=m;否則,令X2=m。
第四步:判斷Ixi-x/VO.005是否成立?若是,則X1、X2之間的任意
取值均為滿足條件的近似根;若否,則返回第二步。
小結(jié):算法具有以下特性:⑴有窮性;(2)確定性;⑶順序性;
⑷不惟一性;(5)普遍性
典例剖析:
1、基本概念題
「x-2y=-l,①
例3寫出解二元一次%■程組的算法
I2x+y=l②
解:第一步,②-①x2得5y=3;③
第二步,解③得y=3/5;
第三步,將y=3/5代入①,得x=l/5
學(xué)生做一做:對于一般的二元一次方程組來說,上述步驟應(yīng)該怎
樣進(jìn)一步完善?
老師評一評:本題的算法是由加減消元法求解的,這個算法也適
畬一般的三元一次方程組的解法。下面寫出求方程組
'T+丁+c=-耳4H0)的解的算法:
1-i^:28)xA「①xA2,得(AB—AzBjy+AC—AzC^O;③
第二步:解③,得y=g二A2c2;
第三步:將鑼彩央得'=上旦出邑
此時我們得到才迫完2隊(duì)方程組的求解公笑謫嘀
此公司可得到
倒2的另一個算法:
第一步:取A1=l,B,=-2,C,=l,A2=2,B2=l,C2=-l;
第二步.計(jì)算X=B2cl+用。2與y_A2cl-A2c2
第三步:輸出運(yùn)算躲。3AVS
可見利用上述算法,更加有利于上機(jī)執(zhí)行與操作。
基礎(chǔ)知識應(yīng)用題
例4寫出一個求有限整數(shù)列中的最大值的算法。
解:算法如下。
S1先假定序列中的第一個整數(shù)為“最大值”。
S2將序列中的下一個整數(shù)值與“最大值”比較,如果它大
于此“最大值”,這時你就假定“最大值”是這個整數(shù)。
S3如果序列中還有其他整數(shù),重復(fù)S2。
S4在序列中一直到?jīng)]有可比的數(shù)為止,這時假定的“最大
值”就是這個序列中的最大值。
學(xué)生做一做寫出對任意3個整數(shù)a,b,c求出最大值的算法。
老師評一評在例2中我們是用自然語言來描述算法的,下面
我們用數(shù)學(xué)語言來描述本題的算法。
SImax=a
S2如果b>max,則max=b.
S3如果Omax,則max=c.
S4max就是a,b,c中的最大值。
綜合應(yīng)用題
例5寫出求1+2+3+4+5+6的一個算法。
分析:可以按逐一相加的程序進(jìn)行,也可以利用公式1+2+…
+/尸須里2進(jìn)行,也可以根據(jù)加法運(yùn)算律簡化運(yùn)算過程。
解:算法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ì)算硬出;
S3:輸出運(yùn)量結(jié)果。
算法3:
S1:將原式變形為(1+6)+(2+5)+(3+4)=3*7;
S2:計(jì)算3x7;
S3:輸出運(yùn)算結(jié)果。
小結(jié):算法1是最原始的方法,最為繁瑣,步驟較多,當(dāng)加數(shù)較
大時,比如1+2+3+…+10000,再用這種方法是行不通的;算法2與
算法3都是比較簡單的算法,但比較而言,算法2最為簡單,且易于
在計(jì)算機(jī)上執(zhí)行操作。
學(xué)生做一做求lx3x5x7x9x11的值,寫出其算法。
老師評一評算法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若i4ll,則返回到S3繼續(xù)執(zhí)行;否則算法結(jié)束。
小結(jié)由于計(jì)算機(jī)動是高速計(jì)算的自動機(jī)器,實(shí)現(xiàn)循環(huán)的語句。
因此,上述算法2不僅是正確的,而且是在計(jì)算機(jī)上能夠?qū)崿F(xiàn)的較好
的算法。在上面的算法中,S3,S4,S5構(gòu)成一個完整的循環(huán),這里
需要說明的是,每經(jīng)過一次循環(huán)之后,變量P、i的值都發(fā)生了變化,
并且生循環(huán)一次之后都要在步驟S5對i的值進(jìn)行檢驗(yàn),一旦發(fā)現(xiàn)i
的值大于11時,立即停止循環(huán),同時輸出最后一個P的值,對于循
環(huán)結(jié)構(gòu)的詳細(xì)情況,我們將在以后的學(xué)習(xí)中介紹。
4、課堂小結(jié)
本節(jié)課主要講了算法的概念,算法就是解決問題的步驟,平時列
論我們做什么事都離不開算法,算法的描述可以用自然語言,也可以
用數(shù)學(xué)語言。
例如,某同學(xué)要在下午到體育館參加比賽,比賽下午2時開始,
請寫出該同學(xué)從家里發(fā)到比賽地的算法。
若用自然語言來描述可寫為
(1)1:00從家出發(fā)到公共汽車站
(2)1:10上公共汽車
(3)1:40到達(dá)體育館
(4)1:45做準(zhǔn)備活動。
(5)2:00比賽開始。
若用數(shù)學(xué)語言來描述可寫為:
S11:00從家出發(fā)到公共汽車站
S21:10上公共汽車
S31:40到達(dá)體育館
S41:45做準(zhǔn)備活動
S52:00比賽開始
大家從中要以看出,實(shí)際上兩種寫法無本質(zhì)區(qū)別,但我們在書寫
時應(yīng)盡量用教學(xué)語言來描述,它的優(yōu)越性在以后的學(xué)習(xí)中我們會體會
到。
5、自我評價
1、寫出解一元二次方程ax?+bx+c=0(aw0)的一個算法。
2、寫出求1至1000的正數(shù)中的3倍數(shù)的一個算法(打印結(jié)果)
6、評價標(biāo)準(zhǔn)
1、解:算法如下
S1計(jì)算△=t>2-4ac
S2如果△〈0,則方程無解;否則xl=
S3輸出計(jì)算結(jié)果xl,x2或無解信息。
2、解:算法如下:
S1使i=l
S2i被3除,得余數(shù)r
S3如果r=0,則打印i,否則不打印
S4使i=i+l
S5若i41000,則返回到S2繼續(xù)執(zhí)行,否則算法結(jié)束。
7、作業(yè):1、寫出解不等式2片3<0的一個算法。
解:第一步:?-2乃-3=0的兩根是品=3,天=-1。
第二步:由2尸3<0可知不等式的解集為{xI-卜歡3}。
評注:該題的解法具有一般性,下面給出形如aX+H+c>0的不等
式的解的步驟(為方便,我們設(shè)a>0)如下:
第一步:計(jì)算△=b2-4ac;----
第二步:若△>(),示出方程兩根和=士之土(設(shè)乂>為),
則不等式解集為{乃I或正用};2a
第三步:若4=0,則不等式解集為JIX6R且乃*-2};
第四步:若△<(),則不等式的解集為R。2a
2、求過P㈤,幻、Q3,㈤兩點(diǎn)的直線斜率有如下的算法:
第一步:取吊=51,y=”,吊=處,71=
第二步:若乂=為;
第三步:輸出斜率不存在;
第四步:若彳苫為;
第五步:計(jì)算攵=三口;
第六步:輸出結(jié)其一”
3、寫出求過兩點(diǎn)M(-2,-1)、N(2,3)的直線與坐標(biāo)軸圍成面積的
一個算法。
解:算法:第一步:取為=-2,/1=-1,吊=2,必=3;
第二步:計(jì)算干1_=三生;
第三步:在第士步多菜用客產(chǎn)。得到y(tǒng)的值叫得直線與y軸交
點(diǎn)(0,m);
第四步:在第二步結(jié)果中令廣。得到片的值11,得直線與x軸交
點(diǎn)(n,0);
第五步:計(jì)算S’ImI?I〃I;
第六步:輸出運(yùn)算結(jié)臬
1.1.2程序框圖(第二、三課時)
一、教學(xué)目標(biāo):
1、知識與技能:掌握程序框圖的概念;會用通用的圖形符號表示算
法,掌握算法的三個基本邏輯結(jié)構(gòu);掌握畫程序框圖的基本規(guī)則,能
正確畫出程序框圖。
2、過程與方法:通過模仿、操作、探索,經(jīng)歷通過設(shè)計(jì)程序框圖表
達(dá)解決問題的過程;學(xué)會靈活、正確地畫程序框圖。
3、情感態(tài)度與價值觀:通過本節(jié)的學(xué)習(xí),使我們對程序框圖有一個
基本的了解;掌握算法語言的三種基本邏輯結(jié)構(gòu),明確程序框圖的基
本要求;認(rèn)識到學(xué)習(xí)程序框圖是我們學(xué)習(xí)計(jì)算機(jī)的一個基本步驟,也
是我們學(xué)習(xí)計(jì)算機(jī)語言的必經(jīng)之路。
二、重點(diǎn)與難點(diǎn):重點(diǎn)是程序框圖的基本概念、基本圖形符號和3種
基本邏輯結(jié)構(gòu),難點(diǎn)是能綜合運(yùn)用這些知識正確地畫出程序框圖。
三、學(xué)法與教學(xué)用具:
1、通過上節(jié)學(xué)習(xí)我們知道,算法就是解決問題的步驟,在我們
利用計(jì)算機(jī)解決問題的時候,首先我們要設(shè)計(jì)計(jì)算機(jī)程序,在設(shè)計(jì)計(jì)
算機(jī)程序時我們首先要畫出程序運(yùn)行的流程圖,使整個程序的執(zhí)行過
程直觀化,使抽象的問題就得十分清晰和具體。有了這個流程圖,再
去設(shè)計(jì)程序就有了依據(jù),從而就可以把整個程序用機(jī)器語言表述出
來,因此程序框圖是我們設(shè)計(jì)程序的基本和開端。
2、我們在學(xué)習(xí)這部分內(nèi)容時,首先要弄清各種圖形符號的意義,
明確每個圖形符號的使用環(huán)境,圖形符號間的聯(lián)結(jié)方式。例如“起止
框”只能出現(xiàn)在整個流程圖的首尾,它表示程序的開始或結(jié)束,其他
圖形符號也是如此,它們都有各自的使用環(huán)境和作用,這是我們在學(xué)
習(xí)這部分知識時必須要注意的一個方面。另外,在我們描述算法或畫
程序框圖時,必須遵循一定的邏輯結(jié)構(gòu),事實(shí)證明,無論如何復(fù)雜的
問題,我們在設(shè)計(jì)它們的算法時,只需用順序結(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è)情境:
算法可以用自然語言來描述,但為了使算法的程序或步驟表達(dá)得
更為直觀,我們更經(jīng)常地用圖形方式來表示它。
基本概念:
(1)起止壯二I起止框是任何流程圖都不可缺少的,它
表明程序的開始和結(jié)束,所以一個完整的流程圖的首末兩端必須是起
止框。
(2)輸入、輸獺:表示數(shù)據(jù)的輸入或結(jié)果的輸出,它
可用在算法中的任何需要輸入、輸出的位置。圖中有三個輸入、
輸出框。第一個出現(xiàn)在開始后的第一步,它的作用是輸入未知數(shù)的系
數(shù)all,al2,a21,a22和常數(shù)項(xiàng)bl,b2,通過這一步,就可以把給定的
數(shù)值寫在輸入框內(nèi),它實(shí)際上是把未知數(shù)的系數(shù)和常數(shù)項(xiàng)的值通知給
了計(jì)算機(jī),另外兩個是輸出框,它們分別位于由判斷分出的兩個分支
中,它們表示最后給出的運(yùn)算結(jié)果,左邊分支中的輸出分框負(fù)責(zé)輸出
DKO時未知數(shù)xl,x2的值,右邊分支中的輸出框負(fù)責(zé)輸出D=0時的
結(jié)果,即輸出無法求解信息。
(3)處鼻口它是采用來賦值、執(zhí)行計(jì)算語句、傳送運(yùn)
算結(jié)果的圖形符號。圖中出現(xiàn)了兩個處理框。第一個處理框的作
用是計(jì)算D=alla22-a21al2的值,第二個處理框的作用是計(jì)算
xl=(bla22-b2al2)/D,x2=(b2all-bla21)/D的值。
(4)判說工>判斷框一般有一個入口和兩個出口,有時
也有多個出口,它是惟一的具有兩個或兩個以上出口的符號,在只有
兩個出口的情形中,通常都分成“是”與“否”(也可用“Y”與“N”)
兩個分支,在圖1T中,通過判斷框?qū)的值進(jìn)行判斷,若判斷框中
的式子是D=0,則說明D=0時由標(biāo)有“是”的分支處理數(shù)據(jù);若D#0,
則由標(biāo)有“否”的分支處理數(shù)據(jù)。例如,我們要打印x的絕對值,可
以設(shè)計(jì)如下框圖。
結(jié)束
從圖中可以看到由判斷框分出兩個分支,構(gòu)成一個選擇性結(jié)構(gòu),
其中選擇的標(biāo)準(zhǔn)是“x>0”,若符合這個條件,則按照“是”分支繼
續(xù)往下執(zhí)行;若不符合這個條件,則按照“否”分支繼續(xù)往下執(zhí)行,
這樣的話,打印出的結(jié)果總是x的絕對值。
在學(xué)習(xí)這部分知識的時候,要掌握各個圖形的形狀、作用及使用
規(guī)則,畫程序框圖的規(guī)則如下:
(1)使用標(biāo)準(zhǔn)的圖形符號。
(2)框圖一般按從上到下、從左到右的方向畫。
(3)除判斷框外,大多數(shù)流程圖符號只有一個進(jìn)入點(diǎn)和一個退
出點(diǎn)。判斷框具有超過一個退出點(diǎn)的惟一符號。
(4)判斷框分兩大類,一類判斷框“是”與“否”兩分支的判
斷,而且有且僅有兩個結(jié)果;另一類是多分支判斷,有幾種不同的結(jié)
果。
(5)在圖形符號內(nèi)描述的語言要非常簡練清楚。
2、典例剖析:
例1:已知x=4,y=2,畫出計(jì)算w=3x+4y的值的程序框圖。
解:程序框如下圖所示:
輸入4,24和2分
別是x和y的值
輸出w
V
小結(jié):此圖的輸入框旁邊加了LI7工J框,它的作用是對框
中的數(shù)據(jù)或內(nèi)容進(jìn)行說明,它可以出現(xiàn)在任何位置。
基礎(chǔ)知識應(yīng)用題
1)順序結(jié)構(gòu):順序結(jié)構(gòu)描述的是是最簡單的算法結(jié)構(gòu),語句與語句
之間,框與框之間是按從上到下的順序進(jìn)行的。
例2:已知一個三角形的三邊分別為2、3、4,利用海倫公式設(shè)計(jì)一
個算法,求出它的面積,并畫出算法的程序框圖。
算法分析:這是一個簡單的問題,只需先算出P的值,再將它代
入公式,最后輸出結(jié)果,只用順序結(jié)構(gòu)就能夠表達(dá)出算法。
程序框圖:
開始
s=Vp(p-2)(p-3)(p-4)
輸出s
結(jié)束
2)條件結(jié)構(gòu):一些簡單的算法可以用順序結(jié)構(gòu)來表示,但是這種結(jié)
構(gòu)無法對描述對象進(jìn)行邏輯判斷,并根據(jù)判斷結(jié)果進(jìn)行不同的處理。
因此,需要有另一種邏輯結(jié)構(gòu)來處理這類問題,這種結(jié)構(gòu)叫做條件結(jié)
構(gòu)。它是根據(jù)指定打件選擇執(zhí)行不同指令的控制結(jié)構(gòu)。
例3:任意給定3個正實(shí)數(shù),設(shè)計(jì)一個算法,判斷分別以這3個
數(shù)為三邊邊長的三角形是否存在,畫出這個算法的程序框圖。
算法分析:判斷分別以這3個數(shù)為三邊邊長的三角形是否存在,
只需要驗(yàn)收這3個數(shù)當(dāng)中任意兩個數(shù)的和是否大于第3個數(shù),這就需
要用到條件結(jié)構(gòu)。
程序框圖:
開始
輸入a.b,c
結(jié)束
3)循環(huán)結(jié)構(gòu):在一些算法中,經(jīng)常會出現(xiàn)從某處開始,按照一定條
件,反復(fù)執(zhí)行某一處理步驟的情況,這就是循環(huán)結(jié)構(gòu),反復(fù)執(zhí)行的處
理步驟為循環(huán)體,顯然,循環(huán)結(jié)構(gòu)中一定包含條件結(jié)構(gòu)。
循環(huán)結(jié)構(gòu)又稱重復(fù)結(jié)構(gòu),循環(huán)結(jié)構(gòu)可細(xì)分為兩類:
(1)一類是當(dāng)型循環(huán)結(jié)構(gòu),如圖「5(1)所示,它的功能是當(dāng)
給定的條件P1成立時,執(zhí)行A框,A框執(zhí)行完畢后,再判斷條件P是
否成立,如果仍然成立,再執(zhí)行A框,如此反復(fù)執(zhí)行A框,直到某一
次條件3不成立為止,此時不再執(zhí)行A框,從b離開循環(huán)結(jié)構(gòu)。
(2)另一類是直到型循環(huán)結(jié)構(gòu),如下圖所示,它的功能是先執(zhí)
行,中后判斷給定的條件P2是否成立,如果P2仍然不成立,則繼續(xù)
執(zhí)行日框,直到某一次給定的條件P2成立為止,此時不再執(zhí)行A框,
V
從b點(diǎn)離開循環(huán)結(jié)構(gòu)。
AA
P2?不成立
不成立
“成立
bb
當(dāng)型循環(huán)結(jié)構(gòu)直到型循環(huán)結(jié)構(gòu)
(1)(2)
例4:設(shè)計(jì)一個計(jì)算1+2+…+100的值的算法,并畫出程序框圖。
算法分析:只需要一個累加變量和一個計(jì)數(shù)變量,將累加變量的
初始值為0,計(jì)數(shù)變量的值可以從1到100。
程序框圖:
開始
i=l
Sum=O
結(jié)束
3、課堂小結(jié):
本節(jié)課主要講述了程序框圖的基本知識,包括常用的圖形符號、
算法的基本邏輯結(jié)構(gòu),算法的基本邏輯結(jié)構(gòu)有三種,即順序結(jié)構(gòu)、條
件結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。其中順序結(jié)構(gòu)是最簡單的結(jié)構(gòu),也是最基本的結(jié)
構(gòu),循環(huán)結(jié)構(gòu)必然包含條件結(jié)構(gòu),所以這三種基本邏輯結(jié)構(gòu)是相互支
撐的,它們共同構(gòu)成了算法的基本結(jié)構(gòu),無論怎樣復(fù)雜的邏輯結(jié)構(gòu),
都可以通過這三種結(jié)構(gòu)來表達(dá)
4、自我評價:
1)設(shè)x為為一個正整數(shù),規(guī)定如下運(yùn)算:若x為奇數(shù),則求3x+2;若x
為偶數(shù),則為5x,寫出算法,并畫出程序框圖。
2)畫出求7+22+2'+…2血的值的程序框圖。
5、評價標(biāo)準(zhǔn):
1.解:算法如下。
S1輸入x
S2若x為奇數(shù),則輸出A=3x+2;否則輸出A=5x
S3算法結(jié)束。
程序框圖如下圖:
開始
i=l
p=pxii=i+l
2、解:序框圖如下圖:
開始
i=l
p=0
結(jié)束
6、作業(yè):課本P11習(xí)題1.1A組2、3
1.2.1輸入、輸出語句和賦值語句(第一課時)
教學(xué)目標(biāo):
知識與技能
(1)正確理解輸入語句、輸出語句、賦值語句的結(jié)構(gòu)。
(2)會寫一些簡單的程序。
(3)掌握賦值語句中的“=”的作用。
過程與方法
(1)讓學(xué)生充分地感知、體驗(yàn)應(yīng)用計(jì)算機(jī)解決數(shù)學(xué)問題的方法;
并能初步操作、模仿。
(2)通過對現(xiàn)實(shí)生活情境的探究,嘗試設(shè)計(jì)出解決問題的程序,
理解邏輯推理的數(shù)學(xué)方法。
情感態(tài)度與價值觀
通過本節(jié)內(nèi)容的學(xué)習(xí),使我們認(rèn)識到計(jì)算機(jī)與人們生活密
切相關(guān),增強(qiáng)計(jì)算機(jī)應(yīng)用意識,提高學(xué)生學(xué)習(xí)新知識的興趣。
重點(diǎn)與難點(diǎn)
重點(diǎn):正確理解輸入語句、輸出語句、賦值語句的作用。
難點(diǎn):準(zhǔn)確寫出輸入語句、輸出語句、賦值語句。
學(xué)法與教學(xué)用具
計(jì)算機(jī)、圖形計(jì)算器
教學(xué)設(shè)想
【創(chuàng)設(shè)情境】
在現(xiàn)代社會里,計(jì)算機(jī)已經(jīng)成為人們?nèi)粘I詈凸ぷ鞑豢扇?/p>
少的工具,如:聽MP3,看電影,玩游戲,打字排版,畫卡通畫,
處理數(shù)據(jù)等等,那么,計(jì)算機(jī)是怎樣工作的呢?
計(jì)算機(jī)完成任何一項(xiàng)任務(wù)都需要算法,但是,我們用自然語
言或程序框圖描述的算法,計(jì)算機(jī)是無法“看得懂,聽得見”的。
因此還需要將算法用計(jì)算機(jī)能夠理解的程序設(shè)計(jì)語言
(programminglanguage)翻譯成計(jì)算機(jī)程序。
程序設(shè)計(jì)語言有很多種。如BASIC,Foxbase,C語言,C++,
J++,VB等。為了實(shí)現(xiàn)算法中的三種基本的邏輯結(jié)構(gòu):順序結(jié)構(gòu)、
條件結(jié)構(gòu)和循環(huán)結(jié)構(gòu),各種程序設(shè)計(jì)語言中都包含下列基本的算
法語句:
輸入語句輸出語句賦值語句條件語句循環(huán)語句
這就是這一節(jié)所要研究的主要內(nèi)容一一基本算法語句。今天,
我們先一起來學(xué)習(xí)輸入、輸出語句和賦值語
句。(板出課題)
【探究新知】
我們知道,順序結(jié)構(gòu)是任何一個算法都
離不開的基本結(jié)構(gòu)。輸入、輸出語句和賦值
語句基本上對應(yīng)于算法中的順序結(jié)構(gòu)。(如右
圖)計(jì)算機(jī)從上而下按照語句排列的順序執(zhí)行這些語句。
輸入語句和輸出語句分別用來實(shí)現(xiàn)算法的輸入信息,輸出結(jié)
果的功能。如下面的例子:
用描點(diǎn)法作函數(shù)y=x3+3/-24x+30的圖象時,需要求出自變
量與函數(shù)的一組對應(yīng)值。編寫程序,分別計(jì)算當(dāng)
x=-5,-4,-3,-2,-1,0,1,2,3,4,5時的函數(shù)值。
程序:(教師可在課前準(zhǔn)備好該程序,教學(xué)中直接調(diào)用運(yùn)行)
INPUT“x=”;x
y=x八3+3*x八2-24^x+30
PRINTx
PRINTy
END
(學(xué)生先不必深究該程序如何得來,只要求懂得上機(jī)操作,模仿
編寫程序,通過運(yùn)行自己編寫的程序發(fā)現(xiàn)問題所在,進(jìn)一步提高
學(xué)生的模仿能力。)
K提問止在這個程序中,你們覺得哪些是輸入語句、輸出語句和
賦值語句呢?(同學(xué)們互相交流、議論、猜想、概括出結(jié)
論。提示:“input”和“print”的中文意思等)
(一)輸入語句
在該程序中的第1行中的INPUT語句就是輸入語句。這個語
句的一般格式是:
INPUT"提示內(nèi)容”;變量
其中,“提示內(nèi)容”一般是提示用戶輸入什么樣的信息。如每
次運(yùn)行上述程序時,依次輸入-5,-4,-3,-2,-1,0,1,2,3,
4,5,計(jì)算機(jī)每次都把新輸入的值賦給變量“x”,并按“x”新獲
得的值執(zhí)行下面的語句。
INPUT語句不但可以給單個變量賦值,還可以給多個變量賦
值,其格式為:
INPUT”提示內(nèi)容1,提示內(nèi)容2,提示內(nèi)容3,…”;變量1,變量2,變量3,…
例如,輸入一個學(xué)生數(shù)學(xué),語文,英語三門課的成績,可以
寫成:
INPUT“數(shù)學(xué),語文,英語”;a,b,c
注:①“提示內(nèi)容”與變量之間必須用分號“;”隔開。
②各“提示內(nèi)容”之間以及各變量之間必須用逗號隔開。
但最后的變量的后面不需要。
(二)輸出語句
在該程序中,第3行和第4行中的PRINT語句是輸出語句。
它的一般格式是:
PRINT”提示內(nèi)容”:表達(dá)式
同輸入語句一樣,表達(dá)式前也可以有“提示內(nèi)容”。例如下面
的語句可以輸出斐波那契數(shù)列:
PRINT"TheFibonacciProgressionis:";
11235813213455
此時屏幕上顯示:
TheFibonacciProgressionis:112358
13213455...
輸出語句的用途:
(1)輸出常量,變量的值和系統(tǒng)信息。(2)輸出數(shù)值
計(jì)算的結(jié)果。
K思考兒在LL2中程序框圖中的輸入框,輸出框的內(nèi)容怎樣用
輸入語句、輸出語句來表達(dá)?(學(xué)生討論、交流想法,然
后請學(xué)生作答)
參考答案:
輸入框:INPUT”請輸入需判斷的整數(shù)n=";n
輸出框:PRINTn;“是質(zhì)數(shù)。”
PRINTn;“不是質(zhì)數(shù)。”
(三)賦值語句
用來表明賦給某一個變量一個具體的確定值的語句。
除了輸入語句,在該程序中第2行的賦值語句也可以給變量
提供初值。它的一般格式是:
變量=表達(dá)式
賦值語句中的叫做賦值號。
賦值語句的作用:先計(jì)算出賦值號右邊表達(dá)式的值,然后把這
個值賦給賦值號左邊的變量,使該變量的值
等于表達(dá)式的值。
注:①賦值號左邊只能是變量名字,而不能是表達(dá)式。如:
2=X是錯誤的。
②賦值號左右不能對換。如“A=B”“B=A”的含義運(yùn)行
結(jié)果是不同的。
③不能利用賦值語句進(jìn)行代數(shù)式的演算。(如化簡、因
式分解、解方程等)
④賦值號"/與數(shù)學(xué)中的等號意義不同。
K思考兒在LL2中程序框圖中的輸入框,哪些語句可以用賦值
語句表達(dá)?并寫出相應(yīng)的賦值語句。(學(xué)生思考討論、交
流想法。)
【例題精析】
K例1H:編寫程序,計(jì)算一個學(xué)生數(shù)學(xué)、語文、英語三門課
的平均成績。
分析:先寫出算法,畫出程序框圖,再進(jìn)行編程。
算法:程序:
開始
a+b+c
y=INPUT“數(shù)學(xué)=";a
3
INPUT“語文=”;b
?INPUT“英語=";c
//輸出y
y=(a+b+c)/3
PRINT"Theaverage=M;y
END
K例23:給一個變量重復(fù)賦值。
程序:
A=10
A=A+10
PRINTA
END
[變式引申]:在此程序的基礎(chǔ)上,設(shè)計(jì)一個程序,要求最后A
的輸出值是30。
(該變式的設(shè)計(jì)意圖是學(xué)生加深對重復(fù)賦值的理
解)
程序:
A=1O
A=A+15
PRINTA
A=A+5
PRINTA
END
K例31:交換兩個變量A和B的值,并輸出交換前后的值。
分析:引入一個中間變量X,將A的值賦予X,又將B的值賦予
A,再將X的值賦予B,從而達(dá)到交換A,B的值。(比如
交換裝滿水的兩個水桶里的水需要再找一個空桶)
程序:(INPUTA
INPUTB
PRINTA,B
X=A
A=B
B=X
PRINTA,B
END
K補(bǔ)例U:編寫一個程序,要求輸入一個圓的半徑,便能輸出該
圓的周長和面積。(萬取3.14)
分析:設(shè)圓的半徑為R,則圓的周長為C=2萬R,面積為S=TTR2,
可以利用順序結(jié)構(gòu)中的INPUT語句,PRINT語句和賦
值語句設(shè)計(jì)程序。
程序:
INPUT“半徑為R=";R
C=2*3.14*R
S=3.14*RA2
PRINT"該圓的周長為:”;C
PRINT”該圓的面積為:”;S
.END)
【課堂精練】
P15練習(xí)1.2.3
參考答案:
1.程序:INPUT"請輸入華氏溫度:”;x
y=(x-32)*5/9
PRINT“華氏溫度:”;x
PRINT“攝氏溫度:";y
END
K提問止如果要求輸入一個攝氏溫度,輸出其相應(yīng)的華氏
溫度,又該如何設(shè)計(jì)程序?(學(xué)生課后思考,討論
完成)
2.程序:INPUT"請輸入a(awO)=";a
INPUT"請輸入b(bwO)=";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ù)名,用來求某個數(shù)的平方根。
【課堂小結(jié)】
本節(jié)課介紹了輸入語句、輸出語句和賦值語句的結(jié)構(gòu)特點(diǎn)
及聯(lián)系。掌握并應(yīng)用輸入語句,輸出語句,賦值語句編寫一些
簡單的程序解決數(shù)學(xué)問題,特別是掌握賦值語句中的作用
及應(yīng)用。編程一般的步驟:先寫出算法,再進(jìn)行編程。我們要
養(yǎng)成良好的習(xí)慣,也有助于數(shù)學(xué)邏輯思維的形成。
【評價設(shè)計(jì)】
習(xí)題組、
1.P231.2A1(2)2
2.試對生活中某個簡單問題或是常見數(shù)學(xué)問題,利用所學(xué)基
本算法語句等知識來解決自己所提出的問題。要求寫出算
法,畫程序框圖,并寫出程序設(shè)計(jì)。
1.2.2-1.2.3條件語句和循環(huán)語句(第二、三課時)
教學(xué)目標(biāo):
知識與技能
(1)正確理解條件語句和循環(huán)語句的概念,并掌握其結(jié)構(gòu)的
區(qū)別與聯(lián)系。
(2)會應(yīng)用條件語句和循環(huán)語句編寫程序。
過程與方法
經(jīng)歷對現(xiàn)實(shí)生活情境的探究,認(rèn)識到應(yīng)用計(jì)算機(jī)解決數(shù)學(xué)
問題方便簡捷,促進(jìn)發(fā)展學(xué)生邏輯思維能力
情感態(tài)度與價值觀
了解條件語句在程序中起判斷轉(zhuǎn)折作用,在解決實(shí)際問題
中起決定作用。深刻體會到循環(huán)語句在解決大量重復(fù)問題中起
重要作用。減少大量繁瑣的計(jì)算。通過本小節(jié)內(nèi)容的學(xué)習(xí),有
益于我們養(yǎng)成嚴(yán)謹(jǐn)?shù)臄?shù)學(xué)思維以及正確處理問題的能力。
重點(diǎn)與難點(diǎn)
重點(diǎn):條件語句和循環(huán)語句的步驟、結(jié)構(gòu)及功能。
難點(diǎn):會編寫程序中的條件語句和循環(huán)語句。
學(xué)法與教學(xué)用具
計(jì)算機(jī)、圖形計(jì)算器
教學(xué)設(shè)想
【創(chuàng)設(shè)情境】
試求自然數(shù)1+2+3+……+99+100的和。
顯然大家都能準(zhǔn)確地口算出它的答案:5050。而能不能將
這項(xiàng)計(jì)算工作交給計(jì)算機(jī)來完成呢?而要編程,以我們前面所
學(xué)的輸入、輸出語句和賦值語句還不能滿足“我們?nèi)找嬖鲩L的
物質(zhì)需要”,因此,還需要進(jìn)一步學(xué)習(xí)基本算法語句中的另外兩
種:條件語句和循環(huán)語句(板出課題)
【探究新知】
(一)條件語句
算法中的條件結(jié)構(gòu)是由條件語句來表達(dá)的,是處理?xiàng)l件分
支邏輯結(jié)構(gòu)的算法語句。它的一般格式是:(IF-THEN-ELSE格式)
當(dāng)計(jì)算機(jī)執(zhí)行上述語句時,首先對IF后的條件進(jìn)行判斷,
如果條件符合,就執(zhí)行THEN后的語句1,否則執(zhí)行ELSE后的語
句2。其對應(yīng)的程序框圖為:(如上右圖)
在某些情況下,也可以只使用IF-THEN語句:(即IF-THEN
格式)
計(jì)算機(jī)執(zhí)行這種形式的條件語句時,也是首先對IF后的條
件進(jìn)行判斷,如果條件符合,就執(zhí)行THEN后的語句,如果條件
不符合,則直接結(jié)束該條件語句,轉(zhuǎn)而執(zhí)行其他語句。其對應(yīng)
的程序框圖為:(如上右圖)
條件語句的作用:在程序執(zhí)行過程中,根據(jù)判斷是否滿足
約定的條件而決定是否需要轉(zhuǎn)換到何處去。需要計(jì)算機(jī)按條件
進(jìn)行分析、比較、判斷,并按判斷后的不同情況進(jìn)行不同的處
理。
【例題精析】
K例1》:編寫程序,輸入一元二次方程ax2+/>x+c=0的系數(shù),輸
出它的實(shí)數(shù)根。
分析:先把解決問題的思路用程序框圖表示出來,然后再根據(jù)
程序框圖給出的算法步驟,逐步把算法用對應(yīng)的程序語
句表達(dá)出來。
算法分析:我們知道,若判別式△=/-4ac>0,原方程有兩個不
相等的實(shí)數(shù)根
-b+yfX
Xi——、
2a
INPUT"Pleaseinputa,b,c=
_-b-4X.若d=b*b-4*a*c
p=-b/(2*a)
2a
q=SQR(ABS(d))/(2*a)
△=0,原方程有兩IFd>=0THEN
xl=p+q
個相等的實(shí)數(shù)根x2=p-q
玉=々=一白若IFxl=x2THEN
A<0,原方程沒有PRINT“Onerealroot:,9;xl
實(shí)數(shù)根。也就是說,
ELSE
在求解方程之前,
DRTMTTLA。1
需要首先判斷判別
式的符號。因此,這個過程可以用算法中的條件結(jié)構(gòu)來實(shí)現(xiàn)。
又因?yàn)榉匠痰膬蓚€根有相同的部分,為了避免重復(fù)計(jì)算,可
以在計(jì)算/和x,之前,先計(jì)算P=-二,4=』可。程序框圖:(參照
2a2a
課本%)
程序:(如右圖所示)
注:SQR()和ABS()是兩個函數(shù),分別用來求某個數(shù)的
平方根和絕對值。
即SQR(x)=?,ABS(X)=B;”)
K例23:編寫程序,使得任意輸入的3個整數(shù)按從大到小的順
已是三者中最大的。
第四步:將b與c比較,并把小者賦給c,大者賦給b,此時a,
b,c已按從大到小的順序排列好。
第五步:按順序輸出a,b,c.
程序框圖:(參照課本?)
程序:(如右框圖所示)
K補(bǔ)例兒鐵路部門托運(yùn)行李的收費(fèi)方法如下:
y是收費(fèi)額(單位:元),x是行李重量(單位:kg),當(dāng)
0<x420時,按0.35元/kg收費(fèi),當(dāng)x>20kg時,20kg的部
分按0.35元/kg,超出20kg的部分,則按0.65元/kg收費(fèi),
請根據(jù)上述收費(fèi)方法編寫程序。
_JO.35x,0<x<20,、
分析:首先由題意得:y=\0.35x20+0.65(x-20),x>20,該函數(shù)
是個分段函數(shù)。需要對行李重量作出判斷,因此,這個
過程可以用算法中的條件結(jié)構(gòu)來實(shí)現(xiàn)。
程序:INPUT"請輸入旅客行李的重量(kg)X=";X
IFx>0ANDx<=20THEN
y=0.35*x
ELSE
y=0.35*20+0.65*(x-20)
ENDIF
PRINT“該旅客行李托運(yùn)費(fèi)為:”;y
END
【課堂精練】
1.P20練習(xí)2.(題略)
分析:如果有兩個或是兩個以上的并列條件時,用“AND”
把它們連接起來。
2.即練習(xí)1.(題略)
參考答案:INPUT"請輸入三個正數(shù)a,b,c=";a,b,
c
IFa+b>cANDa+c>bANDb+c>aTHEN
PRINT"以下列三個數(shù):";a,b,c,“可
以構(gòu)成三角形?!?/p>
ELSE
PRINT"以下列三個數(shù):";a,b,c,“不
可以構(gòu)成三角形!”
ENDIF
END
(-)循環(huán)語句
算法中的循環(huán)結(jié)構(gòu)是由循環(huán)語句來實(shí)現(xiàn)的。對應(yīng)于程序框
其中循環(huán)體是由計(jì)算機(jī)反復(fù)執(zhí)行的一組語句構(gòu)成的。WHLIE
后面的“條件”是用于控制計(jì)算機(jī)執(zhí)行循環(huán)體或跳出循環(huán)體的。
當(dāng)計(jì)算機(jī)遇到WHILE語句時,先判斷條件的真假,如果條
件符合,就執(zhí)行WHILE與WEND之間的循環(huán)體;然后再檢查上述
條件,如果條件仍符合,再次執(zhí)行循環(huán)體,這個過程反復(fù)進(jìn)行,
直到某一次條件不符合為止。這時,計(jì)算機(jī)將不執(zhí)行循環(huán)體,
直接跳到WEND語句后,接著執(zhí)行WEND之后的語句。因此,當(dāng)
型循環(huán)有時也稱為“前測試型”循環(huán)。其對應(yīng)的程序結(jié)構(gòu)框圖
其對應(yīng)的程序結(jié)構(gòu)框圖為:(如上右圖)
K思考兒直到型循環(huán)又稱為“后測試型”循環(huán),參照其直到型循
環(huán)結(jié)構(gòu)對應(yīng)的程序框圖,說說計(jì)算機(jī)是按怎樣的順序執(zhí)
行UNTIL語句的?(讓學(xué)生模仿執(zhí)行WHILE語句的表述)
從UNTIL型循環(huán)結(jié)構(gòu)分析,計(jì)算機(jī)執(zhí)行該語句時,先執(zhí)
行一次循環(huán)體,然后進(jìn)行條件的判斷,如果條件不滿足,繼
續(xù)返回執(zhí)行循環(huán)體,然后再進(jìn)行條件的判斷,這個過程反復(fù)
進(jìn)行,直到某一次條件滿足時,不再執(zhí)行循環(huán)體,跳到LOOP
UNTIL語句后執(zhí)行其他語句,是先執(zhí)行循環(huán)體后進(jìn)行條件判
斷的循環(huán)語句。
K提問兒通過對照,大家覺得WHILE型語句與UNTIL型語句之間
有什么區(qū)別呢?(讓學(xué)生表達(dá)自己的感受)
區(qū)別:在WHILE語句中,是當(dāng)條件滿足時執(zhí)行循環(huán)體,而在
UNTIL語句中,是當(dāng)條件不滿足時執(zhí)行循環(huán)體。
【例題精析】
K例3R:編寫程序,計(jì)算自然數(shù)1+2+3+……+99+100的和。
分析:這是一個累加問題。我們可以用WHILE型語句,也可以用
UNTIL型語句。由此看來,解決問題的方法不是惟一的,當(dāng)
然程序的設(shè)計(jì)也是有多種的,只是程序簡單與復(fù)雜的問題。
程-----------
i=l
序:sum=0sum=0
WHLIEi<=100DO
WHILE型:sum=sum+isum=sum+i
i=i+li=i+l
UNTIL型:WENDLOOPUNTILi>100
PRINTsum
\DDIKITG..EEND
K例4見根據(jù)1.1.2中的圖1.1-2,將程序框圖轉(zhuǎn)化為程序語句。
分析:仔細(xì)觀察,該程序框圖中既有條件結(jié)構(gòu),又有循環(huán)結(jié)構(gòu)。
程序:
flag=l
IFn>2THEN
d=2
WHILEd<=n-lANDflag=l
IFnMODd=0THEN
flag=O
ELSE
d=d+l
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 第5單元 走向近代【考題猜想】(純試題)-2023-2024學(xué)年九年級歷史上學(xué)期期中考點(diǎn)大串講(部編版)
- 課題申報(bào)參考:面向最后一公里配送的無人機(jī)集貨中心選址及任務(wù)分配研究
- 二零二五年度米廠水稻種植與農(nóng)村電商合作項(xiàng)目合同4篇
- 2025年度餐飲店承包經(jīng)營與食品安全責(zé)任合同
- 2025年度個人虛擬形象設(shè)計(jì)制作合同樣本4篇
- 2025年度二零二五年度木材加工廢棄物處理合同規(guī)范4篇
- 二零二五版木制托盤庫存管理與采購合同4篇
- 2025年度個人貨運(yùn)車輛保險合同范本大全3篇
- 二零二五年度玻璃瓶罐生產(chǎn)與銷售采購合同3篇
- 2025年度文化旅游項(xiàng)目承包商擔(dān)保合同范本4篇
- GB/T 10739-2023紙、紙板和紙漿試樣處理和試驗(yàn)的標(biāo)準(zhǔn)大氣條件
- 《心態(tài)與思維模式》課件
- 物流服務(wù)項(xiàng)目的投標(biāo)書
- C語言程序設(shè)計(jì)(慕課版 第2版)PPT完整全套教學(xué)課件
- 行業(yè)會計(jì)比較(第三版)PPT完整全套教學(xué)課件
- 值機(jī)業(yè)務(wù)與行李運(yùn)輸實(shí)務(wù)(第3版)高職PPT完整全套教學(xué)課件
- 高考英語語法填空專項(xiàng)訓(xùn)練(含解析)
- 危險化學(xué)品企業(yè)安全生產(chǎn)標(biāo)準(zhǔn)化課件
- 巨鹿二中骨干教師個人工作業(yè)績材料
- 《美的歷程》導(dǎo)讀課件
- 心電圖 (史上最完美)課件
評論
0/150
提交評論