第一章算法初步1.1算法的概念课时练习(附解析新人教A版必修3)
doc
2022-01-20 11:37:06
7页
算法的概念 (20分钟 35分)1.下列语句表达的是算法的有( )①拨本地电话的过程为:1提起话筒;2拨号;3等通话信号;4开始通话或挂机;5结束通话;②利用公式V=Sh计算底面积为3,高为4的三棱柱的体积;③x2-2x-3=0;④求所有能被3整除的正数,即3,6,9,12,….A.①②B.①②③C.①②④D.①②③④【解析】选A.算法通常是指按照一定规则解决某一类问题的明确和有限的步骤.①②都各表达了一种算法;③只是一个纯数学问题,不是一个明确步骤;④的步骤是无穷的,与算法的有限性矛盾.2.已知直角三角形两直角边长为a,b,求斜边长c的一个算法分下列三步:①计算c=;②输入直角三角形两直角边长a,b的值;③输出斜边长c的值.其中正确的顺序是( )A.①②③B.②③①C.①③②D.②①③【解析】选D.明确各步骤间的关系即可知D选项正确.3.阅读下面的算法:第一步,输入两个实数a,b.第二步,若a<b,则交换a,b的值;否则,不交换a,b的值.第三步,输出a.这个算法输出的是( )A.a,b中较大的数B.a,b中较小的数C.原来的a的值D.原来的b的值【解析】选A.第二步中,若a<b,则交换a,b的值,此时a是a,b中较大的数;若a<b不成立,即a≥b,则不变换a,b的值,此时a也是a,b中较大的数.7
4.已知一个学生的语文成绩为89,数学成绩为96,外语成绩为99,求他的总分和平均成绩的一个算法为:第一步,取A=89,B=96,C=99.第二步,____________. 第三步,____________. 第四步,输出计算的结果.【解析】应先计算总分D=A+B+C,然后再计算平均成绩E=.答案:计算总分D=A+B+C 计算平均成绩E=5.阅读下面的三段话,其中是解决问题的算法的是______. ①求2×3×6的值,先计算2×3=6,再计算6×6=36,最终结果为36;②求1+3+5+7+9的值,先计算1+3=4,再计算4+5=9,再计算9+7=16,再计算16+9=25,最终结果为25;③解一元一次方程(3x-1)=x+1的一般步骤是去分母、去括号、移项、合并同类项、系数化为1.【解析】本题考查算法的概念.①②③都是解决问题的步骤,故①②③中所叙述的都是算法.答案:①②③6.写出求1×2×3×4×5×6的一个算法.【解析】第一步,计算1×2,得到2.第二步,将第一步的运算结果2乘3,得到6.第三步,将第二步的运算结果6乘4,得到24.第四步,将第三步的运算结果24乘5,得到120.第五步,将第四步的运算结果120乘6,得到720.第六步,输出运算结果. (30分钟 60分)一、选择题(每小题5分,共25分)1.下列叙述中①植树需要运苗、挖坑、栽苗、浇水这些步骤;②按顺序进行下列运算:1+1=2,2+1=3,3+1=4,…,99+1=100;③从青岛乘火车到济南,再从济南乘飞机到广州;④3x>x+1;7
⑤求所有能被5整除的正数,即5,10,15,20,….能称为算法的个数为( )A.2B.3C.4D.5【解析】选B.由算法的含义与特征知:①②③都是算法;④中,3x>x+1不是明确的步骤,不满足确定性;⑤中步骤是无穷的,与有限性矛盾.2.结合下面的算法:第一步,输入x.第二步,判断x是否小于0.若是,则输出x+2,否则执行第三步.第三步,输出x-1.当输入的x的值为-1,0,1时,输出的结果分别为( )A.-1,0,1B.-1,1,0C.1,-1,0D.0,-1,1【解析】选C.根据x值与0的关系,选择执行不同的步骤.当x=-1时,输出x+2,即输出1;当x=0时,输出x-1,即输出-1;当x=1时,输出x-1,即输出0.3.给出下面的算法,它解决的是( )第一步,输入x.第二步,如果x<0,则y=x2;否则执行下一步.第三步,如果x=0,则y=2;否则y=-x2.第四步,输出y.A.求函数y=的函数值B.求函数y=的函数值C.求函数y=的函数值D.以上都不正确【解析】选B.由算法知,当x<0时,y=x2;当x=0时,y=2;当x>0时,y=-x2.4.计算下列各式中S的值,能设计算法求解的是( )①S=+++…+;7
②S=+++…++…;③S=+++…+(n≥1且n∈N*).A.①②B.①③C.②③D.①②③【解析】选B.算法是用来求解一类问题的,在实际算法中n的值是具体确定的,算法会根据具体情况确定的n来求值计算,所以①③能设计算法.算法的步骤是有限的,即执行有限步后一定能解决问题,而②显然不符合有限性,所以②不能设计算法.5.早上从起床到出门需要洗脸刷牙(5min)、刷水壶(2min)、烧水(8min)、泡面(3min)、吃饭(10min)、听广播(8min)几个过程.从下列选项中选出最好的一种算法( )A.第一步,洗脸刷牙.第二步,刷水壶.第三步,烧水.第四步,泡面.第五步,吃饭.第六步,听广播B.第一步,刷水壶.第二步,烧水同时洗脸刷牙.第三步,泡面.第四步,吃饭.第五步,听广播C.第一步,刷水壶.第二步,烧水同时洗脸刷牙.第三步,泡面.第四步,吃饭同时听广播D.第一步,吃饭同时听广播.第二步,泡面.第三步,烧水同时洗脸刷牙.第四步,刷水壶【解析】选C.因为A项共用时间36min,B项共用时间31min,C项共用时间23min,D项的算法步骤不符合常理.二、填空题(每小题5分,共15分)6.已知一个算法如下:第一步,令m=a.第二步,如果b<m,则m=b.第三步,如果c<m,则m=c.第四步,输出m.如果a=3,b=6,c=2,则执行这个算法的结果是______. 【解析】这个算法是求a,b,c三个数中的最小值,故这个算法的结果是2.答案:2【补偿训练】输入一个x值,利用y=|x-1|求函数值的算法如下,请将所缺部分补充完整:第一步:输入x;第二步:______; 当x<1时,计算y=1-x;7
第三步:输出y.【解析】以x-1与0的大小关系为分类准则知第二步应填当x≥1时,计算y=x-1.答案:当x≥1时,计算y=x-17.一个人带着三只狼和三只羚羊过河,只有一条船,该船可容纳一个人和两只动物,没有人在的时候,如果狼的数量不少于羚羊的数量,狼就会吃羚羊.该人将动物转移过河的算法如下.请在横线上填上适当的步骤:第一步,人带两只狼过河,并自己返回.第二步,人带一只狼过河,自己返回.第三步,______. 第四步,人带一只羚羊过河,自己返回.第五步,人带两只狼过河.【解析】如不将两只狼带回,则人第三步返回后,狼会吃羚羊.答案:人带两只羚羊过河,并带两只狼返回8.如图所示,汉诺塔问题是指有3根杆子A,B,C,杆子上有若干碟子,把所有的碟子从B杆移动到A杆上,每次只能移动一个碟子,大的碟子不能叠在小的碟子上面.把B杆上的3个碟子全部移动到A杆上,最少需要移动的次数是______. 【解析】直接进行分析,将最小的碟子命名为①,中间的碟子命名为②,最大的碟子命名为③,进行如下移动:①→A,②→C,①→C,③→A,①→B,②→A,①→A,此时按要求全部放好,移动7次.答案:7三、解答题(每小题10分,共20分)9.某商场举办优惠促销活动.若购物金额在800元以上(不含800元),打7折;若购物金额在400元以上(不含400元)800元以下(含800元),打8折;否则,不打折.请为商场收银员设计一个算法,要求输入购物金额x,输出实际交款额y.【解析】算法步骤如下:第一步,输入购物金额x(x>0).第二步,判断“x>800”是否成立,若是,则y=0.7x,转第四步;否则,执行第三步.7
第三步,判断“x>400”是否成立,若是,则y=0.8x;否则,y=x.第四步,输出y,结束算法.10.“韩信点兵”问题:韩信是汉高祖手下的大将,他英勇善战,谋略超群,为汉朝的建立立下了不朽功勋.据说他在一次点兵的时候,为保住军事秘密,不让敌人知道自己部队的军事实力,采用下述点兵方法:①先令士兵从1~3报数,结果最后一个士兵报2;②又令士兵从1~5报数,结果最后一个士兵报3;③又令士兵从1~7报数,结果最后一个士兵报4.这样韩信很快算出自己部队里士兵的总数.请设计一个算法,求出士兵至少有多少人.【解析】第一步,首先确定最小的满足除以3余2的正整数:2;第二步,依次加3就得到所有除以3余2的正整数:2,5,8,11,14,17,20,…第三步,在上列数中确定最小的满足除以5余3的正整数:8.第四步,然后在自然数内,在8的基础上依次加上15的倍数,得到8,23,38,53,….第五步,在上列数中确定最小的满足除以7余4的正整数应为53.1.下面算法的功能是( )第一步,令i=1.第二步,i除以3,得余数r.第三步,若r=0,则输出i;否则,执行第四步.第四步,令i的值增加1.第五步,若i≤1000,则返回第二步;否则,算法结束.A.求3的倍数B.求1至1000中3的倍数C.求i除以3D.求i除以3的余数【解析】选B.由第二步和第三步可知输出的是3的倍数,由第四步与第五步知输出的是1至1000中的数.2.试设计一个判断圆(x-a)2+(y-b)2=r2和直线Ax+By+C=0位置关系的算法.【解析】第一步,输入圆心的坐标(a,b),直线方程的系数A,B,C和半径r.第二步,计算z1=Aa+Bb+C.第三步,计算z2=A2+B2.7
第四步,计算d=.第五步,如果d>r,则输出“相离”;如果d=r,则输出“相切”;如果d<r,则输出“相交”.【补偿训练】某班共有50人,要找出在一次数学测试中及格(60分及60分以上)的成绩.试设计一个算法.【解析】算法如下:第一步,把计数变量n的初始值设为1.第二步,输入一个成绩r,比较r与60的大小,若r≥60,则输出r,然后执行下一步;若r<60,则直接执行下一步.第三步,使计数变量n的值增加1.第四步,判断计数变量n与学生个数50的大小,若n≤50,则返回第二步;若n>50,则结束算法.7