幻灯片 1第二节 基本算法语句、算法案例
----
幻灯片 2三年1考 高考指数:★
1.理解几种基本算法语句——输入语句、输出语句、赋值语句、条件语句、循环语句的含义.
2.了解几个古代算法案例,能利用辗转相除法和更相减损术求最大公约数.
3.用秦九韶算法求多项式的值.
4.了解进位制,会不同进位制间的相互转化.
----
幻灯片 31.利用算法语句写出程序是考查的重点,在内容上以条件语句和循环语句为主;
2.在考查形式上以选择题和填空题为主,重在考查对算法语句和算法案例的理解和应用.
----
幻灯片 41.输入语句、输出语句、赋值语句的格式及功能
INPUT“提示内容”;
变量
输入信息
PRINT “提示内容”;
表达式
变量=表达式
输出常量、变量的值
和系统信息
将表达式所代表的值
赋给变量
----
幻灯片 5【即时应用】
判断下列命题是否正确(请在括号中填写“√”或“×”)
①4=M是赋值语句 ( )
②M=-M是赋值语句 ( )
③输入语句可以同时给多个变量赋值 ( )
④输出语句可以输出常量、变量的值,但不能运算 ( )
⑤赋值号“=”两边可以交换 ( )
----
幻灯片 6【解析】根据赋值语句的格式与功能可知,赋值号左侧是变量,右侧是表达式,两边不能随意交换.所以①错②对⑤错;输入语句可以同时给多个变量赋值,③对;输出语句可以把表达式的值运算后输出,起到了运算的作用,④错.
答案:①× ②√ ③√ ④× ⑤×
----
幻灯片 72.条件语句、循环语句的格式及对应框图
(1)条件语句的格式及框图:
①IF-THEN格式
IF 条件 THEN
语句体
END IF
----
幻灯片 8②IF-THEN-ELSE格式
IF 条件 THEN
语句体1
END IF
语句体2
ELSE
----
幻灯片 9(2)循环语句的格式及框图:
①UNTIL语句
DO
循环体
LOOP UNTIL
否
是
条件
----
幻灯片 10②WHILE语句
WHILE
循环体
WEND
条件
----
幻灯片 11【即时应用】
(1)判断下列语句是否是基本算法语句(请在括号内填“是”或“否”)
①INPUT语句; ( )
②PRINT语句; ( )
③IF-THEN语句; ( )
④END语句; ( )
⑤WHILE语句; ( )
⑥END IF语句. ( )
----
幻灯片 12(2)当a=3时,下面的程序段输出的结果是_________.
----
幻灯片 13(3)下面程序执行后输出的结果是________.
----
幻灯片 14【解析】(1)①,②,③,⑤ 是基本算法语句;
④⑥不是.
(2)该程序段揭示的是分段函数 的对应法则,
故输出6.
----
幻灯片 15(3)程序是求和,执行第一次循环,s=5,n=4;
执行第二次循环,s=9,n=3;
执行第三次循环,s=12,n=2;
执行第四次循环,s=14,n=1;
执行第五次循环,s=15,n=0,满足条件,所以输出n=0.
答案:(1)①是 ②是 ③是 ④否 ⑤是 ⑥否
(2)6 (3)0
----
幻灯片 163.算法案例
(1)辗转相除法与更相减损术是用来求____________的.
(2)秦九韶算法可以使求_______________更加简单和程序化.
(3)进位制是一种记数系统,几进制的含义就是___________.
最大公约数
n次多项式的值
满几进一
----
幻灯片 17【即时应用】
(1)思考:辗转相除法与更相减损术的区别与联系是什么?
提示:二者的算法理论是相似的,都用来求最大公约数,主要区别在于辗转相除法进行的是除法运算,而更相减损术进行的是减法运算,实质都是一个递推的过程.
----
幻灯片 18(2)用“秦九韶算法”计算多项式f(x)=5x5+4x4+3x3+2x2+x+1,当x=2时的值的过程中,要经过_________次乘法运算和______
次加法运算.
【解析】根据秦九韶算法,需经过5次乘法和5次加法运算.
答案:5 5
----
幻灯片 19(3)将389化成四进制数的末位是___________.
【解析】
,末位是第一个余数1.
答案:1
----
幻灯片 20 输入、输出、赋值语句
【方法点睛】输入、输出、赋值语句的注意点
(1)输入语句中的各变量之间用“,”隔开,最后一个变量后不能加标点符号.
(2)输出语句:输出语句中的提示内容与表达式中的变量之间必须用“;”隔开.
(3)赋值语句:赋值号“=”的左边只能是变量名,右边是表达式,左右两边不能交换.
----
幻灯片 21【例1】(1)计算机执行下面的程序段后,输出的结果是( )
(A)1,3 (B)4,1
(C)0,0 (D)6,0
a=1
b=3
a=a+b
b=a-b
PRINT a,b
END
----
幻灯片 22(2)(2011·福建高考)运行如图所示的程序,输出的结果是
___________.
----
幻灯片 23【解题指南】(1)利用赋值语句求得a,b即可.
(2)简单的赋值程序,a与b的值相加后,输出.
【规范解答】
(1)选B.由程序得:
a=1+3=4,b=4-3=1.
(2)∵a=1,b=2,a=a+b,∴a=1+2=3,
∴该程序输出的结果是3.
答案:3
----
幻灯片 24【互动探究】本例(1)中,在语句b=a-b后再加语句b=a-b,则输出的b是多少?
【解析】b=a-b=4-1=3.
----
幻灯片 25【反思·感悟】1.赋值语句中,赋值号仅仅表示把右边的表达式的值赋给左边的变量.
2.输入、输出、赋值语句是任何一个算法中必不可少的语句.一个语句可以输出多个表达式.在赋值语句中,变量的值始终等于最近一次赋给它的值.先前的值将被替换.
----
幻灯片 26【变式备选】编写一个程序,输入正方形的边长,输出它的对角线长和面积的值.
【解析】
INPUT“a=”;a
l=SQR(2)*a
s=a*a
PRINT “l=”;l,“s=”;s
END
----
幻灯片 27 条件语句
【方法点睛】条件语句的应用及注意点
(1)条件语句常与比较大小或分段函数求值相结合.
(2)当有条件语句的嵌套时,难度较大,突破方法是利用分段函数的形式,写出程序的执行过程及结果,再进行分析.
(3)读、写条件语句时,注意IF与END IF的配对.
【提醒】嵌套的条件语句,首字母要依次缩进.
----
幻灯片 28【例2】(1)(2011·江苏高考改编)根据如图所示的程序语句,当输入a,b分别为2,3时,最后输出的m的值是_______.
INPUT a,b
IF a>b THEN
m=a
ELSE
m=b
END IF
PRINT m
END
----
幻灯片 29(2)以下给出了一个程序,根据该程序回答:
INPUT x
IF x<3 THEN
y=2*x
ELSE
IF x>3 THEN
y=x*x-1
ELSE
y=2
END IF
END IF
PRINT y
END
----
幻灯片 30①若输入4,则输出的结果是__________;
②该程序的功能所表达的函数解析式为________.
【解题指南】本例中的两小题考查的是用条件语句表示的程序的运行,解题的关键是按照程序的顺序和条件语句的特点运行.
【规范解答】(1)输入a,b分别为2,3时,a>b不成立,所以执行ELSE后面的语句,把b赋值给m,可知m=3,输出的结果是3.
----
幻灯片 31(2)当x=4时满足x>3的条件,输出y=4×4-1=15,该程序表示的函数解析式是
答案:(1)3
(2)①15 ②
----
幻灯片 32【互动探究】本例(2)题①中,把输入4改为输出y=4,则输入的x=__________.
【解析】由例题中的函数解析式可得
当x<3时,令2x=4得x=2符合题意,
当x>3时,令x2-1=4得x=± (舍去),所以x=2.
答案:2
----
幻灯片 33【反思·感悟】解答或编写有条件语句的程序时注意条件满足与不满足所对应的不同结果,另外还要注意IF-THEN-ELSE-END IF的配对,尤其在嵌套结构时,一层配对就是一个完整的条件结构,在书写程序时易漏掉某一部分.
----
幻灯片 34【变式备选】运行下面程序,若输入x=3,则输出y=_____.
----
幻灯片 35【解析】该程序表达的函数解析式为
∴当x=3>0时输出y=1.
答案:1
----
幻灯片 36 循环语句
【方法点睛】循环语句的应用及注意点
(1)循环语句在高考中常与统计或数列相联系.
(2)对应当型循环结构的语句是“WHILE-WEND”.
对应直到型循环结构的语句是“DO-LOOP UNTIL”.
前者条件在WHILE后,当条件满足时进入循环,后者条件在LOOP UNTIL后,当条件满足时退出循环.
(3)两种循环结构可以相互转化,两种语句也可以相互改写,但控制循环的条件正好相反.
----
幻灯片 37【例3】运行下面的程序:当输入168,72时,输出的结果是
( )
(A)168 (B)72 (C)36 (D)24
INPUT m,n
DO
r=mMODn
m=n
n=r
LOOP UNTIL r=0
PRINT m
END
----
幻灯片 38【解题指南】从程序可以看出,这是用直到型循环语句表示的求两数的最大公约数的程序.
【规范解答】选D.利用辗转相除法可得168与72的最大公约数是24.所以选D.
----
幻灯片 39【反思·感悟】1.解答用算法语句表示的程序题,关键是熟悉常见的程序语句,能够先从总体上把握该程序的功能,然后再进行解答.例如本题,如果从程序中看出是求最大公约数,解答就简单了.
2.计数变量的作用一般是统计循环体执行的次数,改变循环条件的取值,为结束循环做准备.譬如:计算等差、等比数列的前n项的和,n就是计数变量的临界值.
----
幻灯片 40【变式训练】给出以下一个算法的程序(如图所示)
S=0
K=1
WHILE K<=99
S=S+1/K
K=K+1
WEND
PRINT S
END
----
幻灯片 41(1)说明该程序的功能;
(2)请用直到型循环结构画出相应算法的程序框图.
【解析】(1)该程序的功能是求 的和.
----
幻灯片 42(2)
----
幻灯片 43 算法案例
【方法点睛】三个典型算法案例
(1)辗转相除法和更相减损术都是求两个正整数的最大公约数的方法;二者的实质都是递推的过程;都要用循环结构来实现,注意步骤上的不同;
(2)秦九韶算法使多项式求值变得简单,其基本步骤是改写
——计算——结论;
----
幻灯片 44(3)进位制中,十进制化k进制,利用除k取余法.k进制化十进制,可代入公式求解,同时注意利用十进制过渡两个不同进制的数的互化.
----
幻灯片 45【例4】(1)360和504的最大公约数是( )
(A)72 (B)24
(C)2 520 (D)以上都不对
(2)用秦九韶算法计算多项式f(x)=12+35x-8x2+79x3+6x4+5x5+
3x6在x=-4时的值时,v3的值为( )
(A)-845 (B)220 (C)-57 (D)34
(3)完成下列进位制之间的转化:45(10)=________(7).
----
幻灯片 46【解题指南】(1)可以利用辗转相除法求最大公约数;(2)先把表达式写成秦九韶算法的标准形式,再确定v3;(3)利用除k取余法求解.
【规范解答】(1)选A.利用辗转相除法:
504=1×360+144
360=2×144+72
144=2×72
所以360与504的最大公约数是72.
----
幻灯片 47(2)选C.
∵f(x)=(((((3x+5)x+6)x+79)x-8)x+35)x+12,
∴v3=((3x+5)x+6)x+79,∴当x=-4时,v3的值为-57.
(3)利用“除k取余法” 可得45(10)=63(7).
答案:63
----
幻灯片 48【反思·感悟】1.辗转相除法是到达余数为0,更相减损术是
到达减数和差相等.
2.秦九韶算法适用一般的多项式f(x)=anxn+an-1xn-1+…+a1x+a0
的求值问题.直接法求时,乘法运算的次数最多可达到
加法最多n次.秦九韶算法通过转化把乘法运算的次数减少到最
多n次,加法最多n次.
3.把十进制的数转化成七进制的数,利用除7取余法.
----
幻灯片 49【变式训练】用辗转相除法或更相减损术求204与85的最大公约数.
【解析】用辗转相除法求204与85的最大公约数:
204=85×2+34
85=34×2+17
34=17×2
因此,204与85的最大公约数是17.
----
幻灯片 50用更相减损术求204与85的最大公约数:
204-85=119
119-85=34
85-34=51
51-34=17
34-17=17
因此,204与85的最大公约数是17.
----
幻灯片 51【易错误区】直到型循环结束条件的确定误区
【典例】(2012·上饶模拟)如图是一个
求20个数的平均数的程序,在横线上应
填充( )
(A)i>20 (B)i<20
(C)i>=20 (D)i<=20
S=0
i=1
DO
INPUT x
S=S+x
i=i+1
LOOP UNTIL _____
a=S/20
PRINT a
END
----
幻灯片 52【解题指南】程序是利用直到型循环求出20个数的和,再求这20个数的平均数,故结束条件应是满足累加了20个数,又计数变量i从1开始,结束时i=21,故结束条件为i>20.
----
幻灯片 53【规范解答】 选A.设20个数分别为x1,x2,…,x19,x20,
由程序知:i=1时,进入循环S=0+x1=x1,
i=2时,进入循环S=x1+x2,
i=3时,进入循环S=x1+x2+x3,
…
i=k时,进入循环S=x1+x2+…+xk,
不进入循环S=x1+x2+…+xk-1.
∴若有S=x1+x2+…+x20,则i=20时进入循环,i>20时退出循环.
----
幻灯片 54【阅卷人点拨】通过阅卷数据分析与总结,我们可以得到以下误区警示和备考建议:
----
幻灯片 55----
幻灯片 561.(2012·衡阳模拟)下面程序运行后输出的结果为( )
(A)50 (B)5 (C)25 (D)0
a=0
j=1
WHILE j<=5
a=(a + j)MOD 5
j=j+1
WEND
PRINT a
END
----
幻灯片 57【解析】选D.j=1,a=1;j=2,a=3;j=3,a=1;j=4,a=0;j=5,a=0.
----
幻灯片 582.(2012·聊城模拟)
以上表示的函数表达式是________.
INPUT x
IF x<=2 THEN
y=2*x-3
ELSE
y=SQR(x)
END IF
PRINT y
END
----
幻灯片 59【解析】所给语句是条件语句,表示的是分段函数
答案:
----
幻灯片 603.(2012·韶关模拟)以下是计算1+2+3+4+…+100的程序框图,请写出对应的程序.
----
幻灯片 61【解析】
i=1
sum=0
WHILE i<=100
sum=sum+i
i=i+1
WEND
PRINT sum
END
----
【点此下载】