算法的概念.docx
《算法的概念.docx》由会员分享,可在线阅读,更多相关《算法的概念.docx(8页珍藏版)》请在冰豆网上搜索。
算法的概念
课时提升作业一
算法的概念
(25分钟60分)
一、选择题(每小题5分,共25分)
1.(2018·南平高一检测)下面对算法描述正确的一项是()
A.算法只能用自然语言来描述
B.算法只能用图形方式来表示
C.同一问题可以有不同的算法
D.同一问题的算法不同,结果必然不同
【解析】选C.由算法可以用自然语言、图形等多种方式描述,同一问题可以有不同的算法,且结果相同,故A,B,D错误,C正确.
2.下列语句表达中有算法的是()
①从郑州去纽约,可以先乘火车到北京,再坐飞机抵达;
②利用公式S=
a2计算边长为4的正三角形的面积;
③2x>3(x-1)+5;
④求经过M(-1,3)且与直线2x+y-3=0平行的直线,可以直接设直线方程为2x+y+c=0,将M(-1,3)坐标代入方程求出c值,再写出方程.
A.①②③B.①③④C.①②④D.②③④
【解析】选C.判断算法的标准是“解决问题的有效步骤或程序”,解决的问题不仅仅限于数学问题,①②④都表达了一种算法;而③只是一个纯数学问题,没有解决问题的步骤,不属于算法范畴.
【补偿训练】给出下列表述:
①求过M(1,2)与N(-3,-4)两点的直线方程可先求直线MN的斜率,再利用点斜式方程求得;②求三点A(2,2),B(2,6),C(4,4)所在△ABC的面积,可先求AB的长a,再求直线AB的方程及点C到AB的距离h,最后利用S=
ah进行计算;③方程x2+x+1=0无实数根;④植树需要运苗,挖坑,栽苗,浇水这些步骤.其中是算法的有()
A.1个B.2个C.3个D.4个
【解析】选C.根据算法的含义和特征知,①②④是算法.
3.一个算法的步骤如下:
第一步,输入x的值.
第二步,计算x的绝对值y.
第三步,计算z=2y-y.
第四步,输出z的值.
如果输入x的值为-3,则输出z的值为()
A.4B.5C.6D.8
【解析】选B.如果输入x的值为-3,则y=3,所以z=23-3=5.
4.结合下面的算法:
第一步,输入x.
第二步,判断x是否小于0.若是,则输出x+2,结束算法;否则执行第三步.
第三步,输出x-1,结束算法.
当输入x的值为-1,0,1时,输出的结果分别为()
A.-1,0,1B.-1,1,0
C.1,-1,0D.0,-1,1
【解析】选C.根据x与0的大小关系,选择执行不同的步骤.当x=-1时,输出x+2,即输出1;当x=0时,输出x-1,即输出-1;当x=1时,输出x-1,即输出0.
5.(2018·东营高一检测)一个算法步骤如下:
第一步,S取值0,i取值1,
第二步,如果i≤10,则执行第三步,否则执行第六步,
第三步,计算S+i并将结果代替S,
第四步,用i+2的值代替i,
第五步,转去执行第二步,
第六步,输出S.
运行以上步骤后输出的结果S=()
A.16B.25
C.36D.以上均不对
【解题指南】解答本题应注意变量S的变化规律,特别是第三步的含义,第三步每执行一次变量S都会变化.
【解析】选B.由以上计算可知S=1+3+5+7+9=25.
二、填空题(每小题5分,共15分)
6.下列说法中是算法的有__________(填序号).
①用描点法画函数图象;可先列表,再描点,最后用平滑曲线连接成图;
②求以A(1,1),B(-1,-2)两点为端点的线段AB的垂直平分线的方程,可先求出AB中点坐标,再求kAB及垂直平分线的斜率,最后用点斜式方程求得线段AB的垂直平分线的方程;
③求1×2×3×4的值,先计算1×2=2,再计算2×3=6,6×4=24,得最终结果为24;
④
x>2x+4.
【解析】①给出了描点法画函数图象的步骤.
②给出了求线段的垂直平分线的方法及步骤.
③给出了求1×2×3×4的值的过程并得出结果.
④未给出解决问题的方法,不是算法.
故①②③都是算法.
★答案★:
①②③
7.给出下列算法:
第一步,输入x的值,
第二步,当x>4时,计算y=x+2,否则执行下一步,
第三步,计算y=
,
第四步,输出y.
当输入x=0时,输出y=_______.
【解析】因为0<4,执行第三步,
所以y=
=2.
★答案★:
2
8.求过P(a1,b1),Q(a2,b2)两点的直线斜率有如下的算法,请在横线上填上适当步骤:
第一步,取x1=a1,y1=b1,x2=a2,y2=b2.
第二步,判断“x1=x2”是否成立.若是,则输出“斜率不存在”;否则,执行第三步.
第三步,____________.
第四步,输出k.
【解析】根据题意k=
再判定x1=x2是否成立,若不成立,就可用公式计算.
★答案★:
计算斜率k=
三、解答题(每小题10分,共20分)
9.写出求1×2×3×4×5×6的算法.
【解题指南】思路一:
采取逐个相乘的方法;思路二:
由于重复作乘法,故可以设计作重复乘法运算的步骤.
【解析】算法1:
第一步,计算1×2得到2.
第二步,将第一步的运算结果2乘3,得到6.
第三步,将第二步的运算结果6乘4,得到24.
第四步,将第三步的运算结果24乘5,得到120.
第五步,将第四步的运算结果120乘6,得到720.
算法2:
第一步,输入n的值6.
第二步,令i=1,S=1.
第三步,判断“i≤n”是否成立,若不成立,则输出S,结束算法;若成立,则执行下一步.
第四步,令S的值乘i,仍用S表示,令i的值增加1,仍用i表示,返回第三步.
10.某铁路部门规定甲、乙两地之间旅客托运行李的费用为:
其中ω(单位:
kg)为行李的质量,如何设计计算托运费用c(单位:
元)的算法.
【解析】第一步,输入行李的质量ω.
第二步,如果ω≤50,则令c=0.53×ω,否则令c=50×0.53+(ω-50)×0.85.
第三步,输出托运费c.
【方法技巧】设计算法解决实际问题的步骤
(1)读懂题意,明确要求.
(2)利用算法特点,建立合适的模型,设计合理的算法步骤.
(3)用自然语言写出来,关键是找出解决问题的合适方案.
(20分钟40分)
一、选择题(每小题5分,共10分)
1.小明中午放学回家自己煮面条吃,有下面几道工序:
①洗锅、盛水2分钟;②洗菜6分钟;③准备面条及佐料2分钟;④用锅把水烧开10分钟;⑤煮面条和菜共3分钟.以上各道工序,除了④之外,一次只能进行一道工序.小明要将面条煮好,最少要用()
A.13分钟B.14分钟C.15分钟D.23分钟
【解析】选C.①洗锅、盛水2分钟+④用锅把水烧开10分钟(同时②洗菜6分钟+③准备面条及佐料2分钟)+⑤煮面条和菜共3分钟=15分钟.解决一个问题的算法不是唯一的,但在设计时要综合考虑各个方面的因素,选择一种较好的算法.
2.用二分法求方程f(x)=0近似解中的算法共分以下5步,其中正确的顺序为
()
①确定有解区间[a,b](f(a)·f(b)<0);
②计算函数f(x)在中点处的函数值;
③判断新的有解区间的长度是否小于精确度,
a.如果新的有解区间长度大于精确度,则在新的有解区间上重复上述步骤;
b.如果新的有解区间长度小于或等于精确度,则可取新的有解区间的中点为方程的近似解;
④取区间[a,b]的中点x=
;
⑤判断函数值f(
)是否为0,
a.如果为0,x=
就是方程的解,问题得到解决;
b.若f(
)不为0,分两种情况:
若f(a)·
f(
)<0,确定新的有解区间为(a,
);
若f(b)·f(
)<0,确定新的有解区间为(
b).
A.①④②⑤③B.①②③④⑤
C.①⑤②③④D.①④⑤③②
【解析】选A.根据二分法解方程的步骤,可以判断算法的顺序为①④②⑤③.
二、填空题(每小题5分,共10分)
3.已知一个算法如下:
第一步,令m=a.
第二步,如果b<m,则m=b.
第三步,如果c<m,则m=c.
第四步,输出m.
如果a=3,b=6,c=2,则执行这个算法的结果是___________.
【解析】这个算法是求a,b,c三个数中的最小值,故执行这个算法的结果是2.
★答案★:
2
4.某批发商按客户订单数额的大小分别给予不同的优惠折扣.计算客户应付货款的算法步骤如下:
第一步,输入订单数额x(单位:
件),输入单价A(单位:
元/件),
第二步,若x<250,则折扣率d=0;
若250≤x<500,则折扣率d=0.05;
若500≤x<1000,则折扣率d=0.10;
若x≥1000,则折扣率d=0.15;
第三步,计算应付货款T=Ax(1-d)(单位:
元);
第四步,输出应付货款T.
已知一客户买400件时付款38000元,则应付货款为88200元时的订单数额是____________.【解析】当x=400时,折扣率d=0.05,此时应付货款T=38000=A400(1-0.05),故A=100,
当x=500时,折扣率d=0.10,此时应付货款T=100×500(1-0.10)=45000<88200,
若500≤x<1000,此时应付货款T=88200=100x(1-0.10),x=980件,
x=1000时,折扣率d=0.15,此时应付货款T=100×1000(1-0.15)=85000<88200,
若x>1000,此时应付货款T=100x(1-0.15)=88200,x≈1038(舍去).
★答案★:
980
三、解答题(每小题10分,共20分)
5.写出求过点M(-2,-1),N(2,3)的直线与坐标轴围成三角形面积的一个算法.
【解析】已知直线上的两点M,N,由两点式可写出直线方程,令x=0,得出直线与y轴交点;令y=0,得出直线与x轴交点,求出三角形两直角边的长,根据三角形面积公式可求出其面积.
算法步骤如下:
第一步,取x1=-2,y1=-1,x2=2,y2=3,
第二步,得直线方程
第三步,令x=0,得y的值m,从而得直线与y轴交点的坐标(0,m),
第四步,令y=0,得x的值n,从而得直线与x轴交点的坐标(n,0),
第五步,根据三角形面积公式求S=
·|m|·|n|,
第六步,输出S.
6.下面给出了一个问题的算法:
第一步,输入a.
第二步,如果a≥4,则y=2a-1;否则,y=a2-2a+3.
第三步,输出y的值.
问:
(1)这个算法解决的是什么问题?
(2)当输入的a的值为多少时,输出的数值最小?
最小值是多少?
【解析】
(1)这个算法解决的是求分段函数
y=
的函数值的问题.
(2)当a≥4时,y=2a-1≥7;
当a<4时,y=a2-2a+3=(a-1)2+2≥2,
因为当a=1时,y取得最小值2.
所以当输入的a值为1时,输出的数值最小,最小值为2.