《2019-2020學(xué)年高中數(shù)學(xué) 第1章 算法初步 1-2-2 條件語句學(xué)案 新人教A版必修3》由會員分享,可在線閱讀,更多相關(guān)《2019-2020學(xué)年高中數(shù)學(xué) 第1章 算法初步 1-2-2 條件語句學(xué)案 新人教A版必修3(23頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、1.2.2 條件語句
1.理解條件語句的格式及功能.
2.體驗(yàn)如何把判斷框轉(zhuǎn)化為條件語句.
3.通過條件語句的學(xué)習(xí),進(jìn)一步體會算法的基本思想.
1.條件語句
(1)條件語句的格式、功能及與條件結(jié)構(gòu)的對應(yīng)關(guān)系
(2)兩種條件語句的區(qū)別與聯(lián)系
2.條件語句的嵌套和疊加
(1)條件語句的嵌套
②條件語句嵌套的實(shí)質(zhì)
將外層條件語句中的分支語句再設(shè)計成一個條件語句.
溫馨提示:在條件語句中的嵌套中,每一個“IF”對應(yīng)著一個“END IF”,注意書寫格式.
(2)條件語句的疊加
其程序框圖如圖.其語句格式如下:
溫馨提示:從表達(dá)形式上看,
2、條件語句嵌套中內(nèi)層的每一個條件語句在它上層條件語句的一個分支里面,上層條件語句中的“END IF”要在內(nèi)層條件語句之后;而條件語句疊加中每一個條件語句是一個獨(dú)立的整體,在下一個條件語句之前要加上“END IF”.
判斷正誤.(正確的打“√”,錯誤的打“×”)
(1)條件語句與程序框圖中的循環(huán)結(jié)構(gòu)相對應(yīng).( )
(2)條件語句中的單詞“THEN”“ELSE”可以理解為“那么”“否則”的意思.( )
(3)條件語句中必須有ELSE和END IF.( )
(4)條件語句中可以沒有ELSE,但是必須有END IF.( )
[提示] (1)× (2)√ (3)× (4)√ 條件語
3、句與程序框圖中的條件結(jié)構(gòu)相對應(yīng),(1)錯;(2)對;條件語句有2種不同的格式,一種格式中沒有ELSE,但兩種格式都有END IF,故(3)錯;(4)對.
題型一條件語句與條件結(jié)構(gòu)
【典例1】 已知函數(shù)f(x)=對任意的x,求函數(shù)值,請畫出程序框圖并寫出程序語句.
[解] 程序框圖如圖所示:
程序如下:
兩種語句的選擇方法
(1)要解決的問題,如果只需要對滿足條件時的情況作出處理,不需要處理不滿足條件時的情況,那么就選用IF-THEN-END IF條件語句.
(2)要解決的問題,如果既需要解決滿足條件時的情況,又需要解決不滿足條件時的情況,那么應(yīng)選用IF-THEN
4、-ELSE-END IF條件語句.
[針對訓(xùn)練1] 根據(jù)下面的程序框圖寫出程序語句.
[解] 程序框圖所實(shí)現(xiàn)的算法功能是:求任意一個實(shí)數(shù)a的立方的絕對值.
程序如下:
題型二條件語句的應(yīng)用
【典例2】 (1)已知下列程序,當(dāng)輸入x=-2時,輸出的結(jié)果是________.
(2)編寫程序,使得任意輸入2個整數(shù)按從大到小的順序輸出.
[解析] (1)由程序可知其功能是求函數(shù)f(x)=的函數(shù)值,所以f(-2)=2×(-2)2-5=3.
(2)算法:
第一步,輸入2個整數(shù)a,b.
第二步,若a
5、
程序:
[答案] (1)y=3 (2)見解析
引申探究1:如果典例2(1)中輸入x=3,求輸出的結(jié)果是什么?
[解] 該程序的功能是求函數(shù)f(x)=
的函數(shù)值,故f(3)=32-1=8,即輸出的結(jié)果是y=8.
引申探究2:如果典例2(1)中輸出的y=3,那么輸入的x是多少?
[解] 當(dāng)x≥0時,x2-1=3,解得x=2(x=-2舍去);當(dāng)x<0時,2x2-5=3,解得x=-2(x=2舍去),所以輸入的x是2或-2.
利用條件語句描述算法的一般步驟
(1)分析算法,能用自然語言描述算法.
(2)畫出程序框圖.
(3)根據(jù)畫出的程序框圖,依據(jù)條件語句的格式,寫
6、出程序語句.為了程序的可能性,一般IF,ELSE,END IF頂格書寫,其他的語句體前面空兩格.
[針對訓(xùn)練2] 已知分段函數(shù)y=編寫程序,輸入x的值,輸出相應(yīng)的y的值.
[解] 程序如下:
題型三條件語句的疊加
【典例3】 已知分段函數(shù)y=編寫程序,要求輸入自變量x的值,輸出相應(yīng)的函數(shù)值,并畫出程序框圖.
[解] 程序框圖如圖所示:
程序如下:
(1)適用范圍:已知分段函數(shù)的解析式求函數(shù)值的問題,須用條件語句書寫程序,當(dāng)條件的判斷有兩個以上的結(jié)果時,可以選擇條件結(jié)構(gòu)疊加去解決.
(2)解此類問題的步驟
①構(gòu)思出解決問題的一個算法(可用自然語言).
7、②畫出程序框圖,形象直觀地描述算法.
③根據(jù)框圖編寫程序,即逐步把框圖中的算法步驟用算法語句表達(dá)出來.
[針對訓(xùn)練3] 已知a,b,c三個實(shí)數(shù)中,有且只有一個負(fù)數(shù),畫出程序框圖,設(shè)計一個程序,篩選出這個負(fù)數(shù).
[解] 程序框圖如圖.
程序如下:
課堂歸納小結(jié)
1.使用條件語句時應(yīng)注意的問題
(1)條件語句是一個語句,IF,THEN,ELSE,END IF都是語句的一部分.
(2)條件語句必須是以IF開始,以END IF結(jié)束,一個IF必須與一個END IF相對應(yīng).
(3)如果程序中只需對條件為真的情況作出處理,不用處理?xiàng)l件為假的情況時,ELSE分支可以省略,此時
8、條件語句就由雙支變?yōu)閱沃В?
(4)為了程序的可讀性,一般IF、ELSE與END IF頂格書寫,其他的語句體前面則空兩格.
2.對于三段或三段以上的分段函數(shù)求函數(shù)值時,需要條件語句的嵌套結(jié)構(gòu).在編寫條件語句的嵌套中的“條件”時,要注意“IF”與“END IF”的配對,通??梢岳梦淖?
的縮進(jìn)來表示嵌套的層次,以幫助我們對程序的閱讀和理解.
3.條件語句的嵌套,其一般形式是
1.下列關(guān)于條件語句的說法正確的是( )
A.條件語句中必須有ELSE和END IF
B.條件語句中可以沒有END IF
C.條件語句中可以沒有ELSE,但是必須有END IF
D.條件語句
9、中可以沒有END IF,但是必須有ELSE
[解析] 條件語句中必須有END IF,但可以沒有ELSE,故選C.
[答案] C
2.下列對條件語句的描述正確的是( )
A.ELSE后面的語句不可以是條件語句
B.兩個條件語句可以共用一個END IF語句
C.條件語句可以沒有ELSE后的語句
D.條件語句中IF—THEN和ELSE后的語句必須都有
[解析] 條件語句有兩種格式:分別是IF—THEN格式和IF—THEN—ELSE格式.對于一個分支的條件語句可以沒有ELSE后的語句.
[答案] C
3.下列問題需要用條件語句來描述其算法的是( )
A.輸入x,輸出它的相反數(shù)
10、
B.輸入x,輸出它的絕對值
C.求邊長為1的正三角形的面積
D.求棱長為1的正四面體的體積
[解析] A,C,D都不需要分類,所以不需要條件語句;而B需要分類,故需用條件語句.
[答案] B
4.若a=11,下面的程序段輸出的結(jié)果是____________.
[解析] 由于當(dāng)a=11時,不滿足條件a<10,所以執(zhí)行y=a MOD 10,得到的結(jié)果是y=1.注意“a MOD 10”是a除以10的余數(shù).
[答案] 1
5.為了在運(yùn)行下面的程序后得到輸出y=9,則應(yīng)該輸入____________.
[解析] 該程序的功能是求函數(shù)f(x)=
的函數(shù)值,故或
,解得
11、x=4或-4.
[答案] 4或-4
課后作業(yè)(六)
(時間45分鐘)
學(xué)業(yè)水平合格練(時間25分鐘)
1.輸入x=3,根據(jù)程序輸出的結(jié)果是( )
A.13 B.20
C.12 D.5
[解析] ∵x=3<4,∴y=x2-4=32-4=5.
[答案] D
2.給出下列程序:
如果輸入x1=2,x2=3,那么執(zhí)行此程序后,輸出的結(jié)果是( )
A.7 B.10
C.5 D.8
[解析] ∵x1=2,x2=3,∴x1≠x2.
∴執(zhí)行END IF后的語句,即y=x1+x2=5.
[答案] C
3.根據(jù)下列算法語句,當(dāng)輸入x為60時,
12、輸出y的值為( )
A.25 B.30
C.31 D.61
[解析] 由題意,得y=
當(dāng)x=60時,y=25+0.6×(60-50)=31.
∴輸出y的值為31.
[答案] C
4.運(yùn)行下面程序:
在兩次運(yùn)行這個程序時,第一次輸入8和4,第二次輸入2和4,則兩次運(yùn)行后輸出的結(jié)果分別為( )
A.8,2 B.8,4
C.4,2 D.4,4
[解析] 第一次A=8,B=4,A>B成立,則C==4;第二次A=2,B=4,A>B不成立,則C==2.
[答案] C
5.在下面程序中,若輸入x=,則輸出的y值為( )
A.0 B.1
13、
C.3 D.
[解析] 由于>0,故輸出y=×-5=1,故選B.
[答案] B
6.下列程序語句是求函數(shù)y=|x-4|+1的函數(shù)值,則①處為( )
A.y=3-x B.y=x-5
C.y=5-x D.y=x-3
[解析] ∵y=|x-4|+1=故選C.
[答案] C
7.讀程序,完成下列題目:
程序如圖:
(1)若執(zhí)行程序時,沒有執(zhí)行語句y=x+1,則輸入的x的范圍是____________;
(2)若執(zhí)行結(jié)果為3,則執(zhí)行的賦值語句是____________,輸入的x的值是____________.
[解析] (1)不執(zhí)行y=x+1語句
14、,說明不滿足條件x≥1,故有x<1.
(2)當(dāng)x<1時,y<2×1+1=3,只有x+1=3,x=2.
[答案] (1)x<1 (2)y=x+1 2
8.完成如圖所示的程序,輸入x的值,求函數(shù)y=|8-2x2| 的值.
[答案]?、賦>=-2 AND x<=2?、趛=
9.讀下列所給的程序,依據(jù)程序畫出程序框圖,并說明其功能.
[解] 此程序表達(dá)的是一個分段函數(shù).
當(dāng)-1≤x≤1時,輸出y的值為0,否則(當(dāng)x<-1或x>1時),輸出y的值為1.
程序框圖如圖:
10.讀下列所給程序,依據(jù)程序畫出程序框圖,并說明其功能.
[解] 如圖:
這個程序是從鍵
15、盤上輸入三個正數(shù)(表示三條線段),檢驗(yàn)這三個數(shù)是否為三角形的三條邊長.如果是,求出三角形的面積,否則,輸出“輸入的三個數(shù)不是三角形三邊長”的算法.
應(yīng)試能力等級練(時間20分鐘)
11.閱讀下列程序:
若輸入5,則程序運(yùn)行的結(jié)果為( )
A.1 B.10
C.25 D.26
[解析] a=5時,條件a>5不成立,故執(zhí)行ELSE后面的語句b=a2+1=26.
[答案] D
12.下列程序的功能是:判斷任意輸入的數(shù)x是否為正數(shù),若是,輸出它的平方值;若不是,輸出它的相反數(shù).
則填入的條件應(yīng)該是( )
A.x>0 B.x<0
C.x>=0 D
16、.x<=0
[解析] 因?yàn)闂l件真則執(zhí)行y=-x,條件假則執(zhí)行y=x * x,由程序功能知條件應(yīng)為x<=0.
[答案] D
13.給出下列程序:
若輸出的結(jié)果是5,則輸入的x=________.
[解析] 令3x+1=5,則x=>1成立;令x+4=5,則x=1≤1成立,則x=或1.
[答案] 或1
14.閱讀下面的程序:
上述程序如果輸入的值是51,則運(yùn)行結(jié)果是____________.
[解析] a=51÷10=5.1,b=51 MOD 10=1,x=10×1+5.1=15.1
[答案] 15.1
15.某商場購物實(shí)行優(yōu)惠措施,若購物金額x在800元以上(包括800元),打8折;若購物金額x在500元以上(包括500元),但不足800元,則打九折,否則不打折.設(shè)計程序框圖,并編寫程序,要求輸入購物金額x,能輸出實(shí)際交款額y.
[解] 由題意建立函數(shù)模型為y=
程序框圖如圖所示.
程序如下:
23