重難點:經(jīng)歷將具體問題的流程圖轉(zhuǎn)化為偽代碼的過程;理解用偽代碼表示的基本語句??輸入語句、輸出語句、賦值語句、條件語句、循環(huán)語句,進一步體會算法的基本思想.
考綱要求:①理解幾種基本算法語句??輸入語句、輸出語句、賦值語句、條件語句、循環(huán)語句的含義.
經(jīng)典例題:意大利數(shù)學(xué)家菲波拉契,在1202年出版的一書里提出了這樣的一個問題:一對兔子飼養(yǎng)到第二個月進入成年,第三個月生一對小兔,以后每個月生一對小兔,所生小兔能全部存活并且也是第二個月成年,第三個月生一對小兔,以后每月生一對小兔.問這樣下去到年底應(yīng)有多少對兔子? 試畫出解決此問題的程序框圖,并編寫相應(yīng)的程序.
當(dāng)堂練習(xí):
1.下邊程序運行后的輸出結(jié)果為( )
A.17 B.19 C.21 D.23
2.下邊程序運行的結(jié)果是( )
A.1,2,3 B.2,3,1 C.2,3,2 D.3,2,1
3.下邊程序運行后輸出的結(jié)果為( )
A. 3 4 5 6 B. 4 5 6 7 C. 5 6 7 8 D. 6 7 8 9
4下圖給出的是計算的值的一個程序框圖,其中判斷框內(nèi)應(yīng)填入的條件是( )
A.i>10 B.i<10 C.i>20 D.i<20
5.算法: S1 輸入n;
S2 判斷n是否是2,若n=2,則n滿足條件,
若n>2,則執(zhí)行S3;
s3 依次從2到n一1檢驗?zāi)懿荒苷齨,若不能整除n,
則輸出n.
則輸出n是( )
A.質(zhì)數(shù) B.奇數(shù) C.偶數(shù) D.約數(shù)
6.讀程序
甲:INPUT i=1 乙:INPUT I=1000
S=0 S=0
WHILE i≤1000 DO
S=S+i S=S+i
i=i+l I=i一1
WEND Loop UNTIL i<1
PRINT S PRINT S
END END
對甲乙兩程序和輸出結(jié)果判斷正確的是( )
A.程序不同結(jié)果不同 B.程序不同,結(jié)果相同 C.程序相同結(jié)果不同 D.程序相同,結(jié)果相同
7.閱讀下列程序:
輸入x;
if x<0, then y:=;
else if x>0, then y:=;
else y:=0;
輸出 y.
如果輸入x=-2,則輸出結(jié)果y為( )
A.3+ B.3- C.-5 D.--5
8.x=5
y=6
PRINT xy=11
END
上面程序運行時輸出的結(jié)果是( )
A.xy≠11 B.11 C.xy=11 D.出錯信息
9.下面的問題中必須用條件結(jié)構(gòu)才能實現(xiàn)的個數(shù)是( )
(1)已知三角形三邊長,求三角形的面積;
(2)求方程ax+b=0(a,b為常數(shù))的根;
(3)求三個實數(shù)a,b,c中的最大者;
(4)求1+2+3+…+100的值。
A.4個 B. 3個 C. 2個 D. 1個
10.兩個數(shù)5671、10759的最大公約數(shù)是( )
A.46 B.53 C.28 D.71
11.二進制數(shù)111011001001 (2)對應(yīng)的十進制數(shù)是( )
A.3901 B.3902 C.3785 D.3904
12.下面的代碼的算法目的是( )
10 Read a,b
20 r←mod(a,b)
30 If r=0 then Goto 80
40 Else
50 a←b
60 b←r
70 Goto 20
80 Print b
A.求x,y的最小公倍數(shù) B.求x,y的最大公約數(shù)
C.求x被y整除的商 D.求y除以x的余數(shù)
13.若連續(xù)函數(shù)在區(qū)間內(nèi)單調(diào),且,則在區(qū)間內(nèi)( )
A. 至多有一個根 B.至少有一個根 C.恰好有一個根 D.不確定
14.已知算法如下:
S=0;
輸入 n;
for i:=1 to n do
begin
S=S+2*i;
end.
輸出S.
若輸入變量n的值為3,則輸出變量S的值為 ;
若輸出變量S的值為30,則變量n的值為 .
15.看右邊程序運行后,輸出的結(jié)果為______________..
x=5
y=-20
IF x<0 THEN
x=y-3
PRINT x
ELSE
y=y+3
PRINT y
END IF
END。ǖ15題)
16.算法程序:計算1+2+3+…+n的值(要求可以輸入任意大于1的正自然數(shù))中,請?zhí)钌峡杖钡牟糠郑?
INPUT “n=”;n
i=1
sum=0
WHILE i<=n
sum=sum+I
i=i+1
PRINT sum
END
(第16題)
17.用秦九韶算法求n次多項式,當(dāng)時,求需要算乘方、乘法、加法的次數(shù)分別為 .
18.青年歌手電視大賽共有10名選手參加,并請了12名評委,在計算每位選手的平均分?jǐn)?shù)時,為了避免個別評委所給的極端分?jǐn)?shù)的影響,必須去掉一個最高分和一個最底分后再求平均分.試設(shè)計一個算法,解決該問題,要求畫出程序框圖,寫出程序(假定分?jǐn)?shù)采用10分制,即每位選手的分?jǐn)?shù)最高分為10分,最底分為0分).
19.目前高中畢業(yè)會考中,成績在85~100為“A”,70~84為“B”,60~69為“C”,60分以下為“D”.編制程序,輸入學(xué)生的考試成績(百分制,若有小數(shù)則四舍五入),輸出相應(yīng)的等級.
20.給出30個數(shù):1,2,4,7,……,其規(guī)律是:第1個數(shù)是1,第2個數(shù)比第1個數(shù)大1, 第3個數(shù)比第2個數(shù)大2,第4個數(shù)比第3個數(shù)大3,依此類推.要計算這30個數(shù)的和,現(xiàn)已給出了該問題算法的程序框圖(如圖所示),(I)請在圖中判斷框內(nèi)(1)處和執(zhí)行框中的(2)處填上合適的語句,使之能完成該題算法功能;(II)根據(jù)程序框圖寫出程序.
21.有10個互不相等的數(shù),寫出找出其中一個最大數(shù)的算法和程序.
參考答案:
經(jīng)典例題:根據(jù)題意可知,第一個月有1對小兔,第二個月有1對成年兔子,第三個月有兩對兔子,從第三個月開始,每個月的兔子對數(shù)是前面兩個月兔子對數(shù)的和,設(shè)第N個月有兩F對兔子,第N-1個月有S對兔子,第N-2個月有Q對兔子,則有F=S+Q,一個月后,即第N+1個月時,式中變量S的新值應(yīng)變第N個月兔子的對數(shù)(F的舊值),變量Q的新值應(yīng)變?yōu)榈贜-1個月兔子的對數(shù)(S的舊值),這樣,用S+Q求出變量F的新值就是N+1個月兔子的數(shù),依此類推,可以得到一個數(shù)序列,數(shù)序列的第12項就是年底應(yīng)有兔子對數(shù),我們可以先確定前兩個月的兔子對數(shù)均為1,以此為基準(zhǔn),構(gòu)造一個循環(huán)程序,讓表示“第×個月的I從3逐次增加1,一直變化到12,最后一次循環(huán)得到的F”就是所求結(jié)果. 流程圖和程序如下:
S=1
Q=1
I=3
WHILE I<=12
F=S+Q
Q=S
S=F
I=I+1
WEND
PRINT F
END
(經(jīng)典例題)
當(dāng)堂練習(xí):
1.A; 2.C; 3.A; 4.A; 5.A; 6.B; 7.B; 8.C; 9.C; 10.B; 11.C; 12.B; 13.D; 14. 12,5; 15.-17; 16. WEND; 17. 0,n,n;
18. 由于共有12位評委,所以每位選手會有12個分?jǐn)?shù),我們可以用循環(huán)語句來完成這12個分?jǐn)?shù)的輸入,同時設(shè)計累加變量求出這12個分?jǐn)?shù)的和,本問題的關(guān)鍵在于從這12個輸入分?jǐn)?shù)中找出最大數(shù)與最小數(shù),以便從總分中減去這兩個數(shù).由于每位選手的分?jǐn)?shù)都介于0分和10分之間,去我們可以先假設(shè)其中的最大數(shù)為0,最小數(shù)為10,然后每次輸入一個評委的分?jǐn)?shù),就進行一次比較,若輸入的數(shù)大于0,就將之代替最大數(shù),若輸入的數(shù)小于10,就用它代替最小數(shù),依次下去,就能找出這12個數(shù)中的最大數(shù)與最小數(shù),循環(huán)結(jié)束后,從總和中減去最大數(shù)與最小數(shù),再除以10,就得到該選手最后的平均數(shù).
程序框圖如上圖所示.
s=0
k=1
max=0
min=10
DO
INPUT x
s=s+x
IF max<=x THEN
max=x
END IF
IF min>=x THEN
min=x
END IF
k=k+1
LOOP UNTIL k>12
s1=s-max-min
a=s1/10
PRINT a
END (第18題程序)
19. I=1
WHILE I=1
INPUT “shu ru xue sheng cheng ji a=”;a
IF a<60 THEN
PRINT “D”
ELSE
IF a<70 THEN
PRINT “C”
ELSE
IF a<85 THEN
PRINT “B”
ELSE
PRINT “A”
END IF
END IF
END IF
INPUT “INPUT 1,INPUT 2”;I
WEND
END (第19題)
20.該算法使用了當(dāng)型循環(huán)結(jié)構(gòu),因為是求30個數(shù)的和,故循環(huán)體應(yīng)執(zhí)行30次,其中i是計數(shù)變量,因此判斷框內(nèi)的條件就是限制計數(shù)變量i的,故應(yīng)為.算法中的變量p實質(zhì)是表示參與求和的各個數(shù),由于它也是變化的,且滿足第i個數(shù)比其前一個數(shù)大,,第個數(shù)比其前一個數(shù)大i,故應(yīng)有.故(1)處應(yīng)填;(2)處應(yīng)填
i=1
p=1
s=0
WHILE i<=30
s=s+p
p=p+i
i=i+1
WEND
PRINT a
END
(第20題程序)
21.S1:輸入一個數(shù),放在MAX中
S2:i=1
S3:輸入第1個數(shù),放入x中
S4:若x>MAX,則MAX=z
S5:i=i+1
S6:若i≤9,返回S3繼續(xù)執(zhí)行,否則停.
本文來自:逍遙右腦記憶 http://yy-art.cn/gaozhong/146132.html
相關(guān)閱讀:美國高中數(shù)學(xué)都學(xué)什么?