内容正文:
高效作业6[第6课 用算法解决问题的过程【A级 新教材落实与巩固】
1.下面是一段关于计算变量m 的算法:①输入变量x,y 的值;②将x,y 的和赋值给m;③将m-x 的值赋值给x;④将m-x 的值赋值给y。该算法的功能是( C )
A.求x 和y 中的较小值
B.求x 和y 中的较大值
C.交换x和y 的值
D.计算x 和y 的平均值
【解析】 用加法减法实现数据交换,选项C正确。
2.某大型超市为了提高结账收银的效率,引入“超市自动收银系统”,其结账子系统具体的算法设计由以下6个步骤组成:
①输出结算清单总金额sum;
②将价格price进行累加并存储到sum中;
③若按结算键,则转到①,否则转到⑤;
④输出商品的价格price及当前应付金额sum;
⑤通过扫码仪扫描条形码,输入商品编码code;
⑥在数据库中找出code对应的商品名称name和价格price。
上述步骤的正确顺序是( B )
A.⑤④③⑥②① B.⑤⑥②④③①
C.⑤③⑥②④① D.⑤③②①④⑥
3.计算机编程解决“斐波那契数列(从第三项开始每一项都是前两项之和)”问题的过程由以下4个步骤组成:
①用Python中的循环结构编写程序;
②调试运行程序,发现错误并进行修正;
③设计算法:设计输入、处理、输出等一系列算法;
④抽象与建模:用数学符号F(0)=F(1)=1, F(n)=F(n-1)+F(n-2)(n≥2,n∈N*)描述解决问题的计算模型。
上述步骤的正确顺序是( D )
A.①②③④ B.③④①②
C.④③②① D.④③①②
【解析】 用计算机编程解决问题的一般过程:抽象与建模;设计算法;编写程序;调试运行程序。选项D正确。
阅读下列材料,回答第4至5题。
智慧停车系统的收费标准:第1小时内1.25元/半小时,第2小时起2元/半小时,连续24小时30元封顶,不足半小时按半小时计算。
4.下列关于用算法解决上述问题的说法中,不正确的是( B )
A.该算法可以用流程图描述
B.解决该问题的算法是唯一的
C.可以通过抽象与建模、设计算法、描述算法这三步来解决问题
D.根据不同时长需要进行不同的处理是通过控制转移来实现的
【解析】 解决该问题的算法不唯一,可以使用多分支结构,也可以使用嵌套分支结构,选项B错误。
5.某车连续停车时长为m(单位:分钟),应缴费用为y(单位:元),输入m后计算费用的算法流程图如下,则流程图中①、②处应填入的内容分别是( C )
A.x<2? x<16? B.x<2? x≤16?
C.x≤2? x<16? D.x≤2? x≤16?
【解析】 由流程图可知,①处条件成立表示停车时间在1小时以内,包括1小时,故此空判断x≤2是否成立;②处条件成立表示停车时长超过1小时,且停车x个半小时后,停车费在30元以内,(x-2)*2+2.5<30,可得x<15.75,x为整数,故此空判断x<16是否成立,选项C正确。
2024·天台中学检测阅读下列材料,回答第6至7题。
某手机 APP 程序为了增加程序热度,采用“签到换积分”的形式来吸引用户。用户的签到记录由“0”和“1”的字符串组成,其中字符“0”表示未签到,字符“1”表示签到。积分计算规则如下:签到 1 天得 1 分,若连续签到 k 天,则 k 天所得分数为 1+2+…+k-1+k 分;未签到得 0 分。例如:
第1天
第2天
第3天
第4天
第5天
第6天
…
签到
签到
未签到
签到
签到
签到
…
+1
+2
+0
+1
+2
+3
…
6.实现上述功能的流程图如图所示,则流程图中①、②处应填入的内容分别是( D )
A.①t←1 ②sum←t
B.①t←0 ②sum←t
C.①t←1 ②sum←sum+t
D.①t←0 ②sum←sum+t
【解析】 未签到时,积分为0,则第1个空t←0;第2个空将积分累加,选项D正确。
7.某用户的签到记录为“1011000111100111111”,执行上述流程后,输出的结果是( C )
A.10 B.13 C.35 D.47
【解析】 1011000111100111111对应的积分为:
1 0 1 2 0 0 0 1 2 3 4 0 0 1 2 3 4 5 6
加起来的结果为35,选项C正确。
8.为更好地服务杭州城市发展,完善错峰出行方案,杭州市实行“浙A 区域号牌”。当前杭州市的车牌分为“浙A 号牌”和“浙A 区域号牌”,两种车牌的限行规则有所不同。小明想结合现学知识,模拟在交通系统中区分“浙A 号牌”和“浙A 区域号牌”的算法。(附:“浙A 区域号牌”的组合方式现阶段为“浙A”后的第3、4 位或第2、5 位均为大写的英文字母,其余为数字,如“浙A55BB5”或“浙A5B55B”。)用算法来解决上述问题,下列说法不正确的是( C )
A.可以通过抽象与建模、设计算法、描述算法这三步来解决问题
B.根据不同车牌,需要进行不同的处理,这是通过控制转移来实现的
C.该问题不能用流程图来描述算法
D.“浙A586GM”不是“浙A 区域号牌”
【解析】 该问题并不复杂,可以用流程图来描述算法,选项C错误。
【B级 素养形成与评价】
9.2024·定海一中检测小亮参与了“求圆周率π”的项目实践,该项目要求自己编写程序求圆周率。小亮所在的小组通过查询资料,获得了多个计算圆周率π的方法,他们选择的公式如下,并通过运算100 万项、1000万项和1 亿项三种情况,对比查看结果的精确度。请回答下列问题。
=······…
(1)用计算机解决问题的过程一般包括四步:①设计算法;②调试运行程序;③编写程序;④抽象与建模。这四个步骤的正确顺序是__④①③②__。
(2)小亮用流程图描述算法如图1 所示,该算法属于__循环__结构(选填:顺序/分支/循环)。
(3)为使流程图能正确实现上述公式的计算,请完成以下填空:
图1
①__1__ ② s*(i+1)*(i+1)/(i*(i+2))
或①2 ②s*i*i/((i-1)*(i+1))
③__2*s__
图2
(4)项目完成后,最终的运行结果如图2 所示,从图中我们可以得到__BC__(多选,填字母)。
A.算法必须有输入和输出,缺一不可
B.如果输入的值特别大,导致该算法不能在有限的时间内输出结果,这就违背了算法的可行性
C.根据运行结果推断,若运算次数为10 亿时,在个人电脑上可以准确算出π的八位小数
D.该算法运算次数越多结果越精确,这说明该算法不具备有穷性
【解析】 (1)用计算机编程解决问题的一般过程:抽象与建模→设计算法→编写程序→调试运行程序。
(2)有判断框,有环,属于循环结构。
(3)两项一组,由公式·····…,推断得到。
10.红外测温仪可以在合适的距离实现非接触测温,在医院、学校、车站等场所有其明显优势。分析其测温过程,回答下列问题。
(1)测温仪先通过红外温度传感器获取数据,然后进行计算,最后显示体温度数。解决测温问题的这一系列步骤属于__A__(单选,填字母:A.算法;B.运算)。
(2)测温过程的步骤是有限的,体现算法的__A__,每一个步骤的操作是明确的,体现算法的__C__,一次测温过程中最终显示的体温数据,体现算法的__E__(单选,填字母:A.有穷性;B.可行性;C.确定性;D.0 个或多个输入;E.1 个或多个输出)。
(3)如果测量结果超过37.2 ℃,测温仪会发出提示音。该判断部分描述过程中需要用到的流程图基本图形为__D__(单选,填字母)。
A. B.
C. D.
【解析】 (1)解决测温问题的这一系列的步骤属于算法。
(2)测温过程的步骤是有限的——有穷性;每一个步骤的操作是明确的——确定性;一次测温过程中最终显示的体温数据,体现算法的“1个或多个输出”。
(3)使用分支结构,使用判断框。
11.某打车APP 能根据路程自动计算车费,小明欲探究其“车费计算”的算法,请回答以下问题。
(1)解决“车费计算”问题需要提炼的核心要素是__CE__(多选,填字母)。
A.车的颜色(c)
B.用户评价(v)
C.起始地到目的地的距离(s)
D.车牌号(p)
E.付费金额(pay)
(2)根据“打车收费标准”,请在横线处填入合适的数学表达式。
pay=
(3)该算法的控制结构是__B__(单选,填字母:A.顺序结构;B.分支结构;C.循环结构)。
【解析】 (1)计算车费需要距离和金额。
(2)①超过5公里且在15公里以内。
②超过15公里,按3元/公里计算。
12.2024·平湖中学检测几位同学准备假期一起去某地旅游。出发前,所有同学都预交了等额的旅行费用并统一保管,用于支付旅途中的消费。旅途消费情况记录如下表所示:其中,有的项目消费是均摊的(比如车费、餐费),有的项目消费是不均摊的 (比如参加打麻糍、采香菇活动)。最后,根据每个人的消费情况统一结账,多退少补。 为此设计一个算法, 用于记录旅途中的各项消费,统计每位同学的旅行费用。
序号
项目名称
消费金额/元
人员
1
车费
160
孙康 李佳
王含 张山
2
餐费
200
孙康 李佳
王含 张山
3
打麻糍
120
李佳 王含 张山
4
采香菇
50
李佳 张山
第1步:抽象与建模。
(1)数据符号化处理。用n存储项目总数;用f存储小组成员编号;小组成员编号分别用t1、t2、t3、t4表示;用sums存储预交总金额;用sum1存储t1号成员的消费金额,用sum2 存储t2号成员的消费金额,以此类推;用sum存储所有成员的实际消费总金额;用p存储各项目的消费金额;
(2)建立计算模型。基于上述分析,可得出解决该问题的计算模型如下:
①计算实际消费总金额:将每一条消费记录的金额进行累加。
②计算每位小组成员的消费总金额:将每位小组成员消费记录的金额进行累加。
第2步:设计算法。
按照“自上而下、逐步细化” 的结构化程序设计思想,对前面的算法进行如下细化:
(1)输入总消费项目数n;
(2)表示序号的变量i初始化为1;
(3)若i<=n,则转(4),否则转到__(7)__;
(4)输入第i项的数据(包括成员编号f、消费金额p);
(5)根据项目类型和小组成员编号进行判断, 将消费金额p统计到对应成员的个人费用和实际消费总金额sum中;
(6)表示序号的变量i增加1,转到__(3)__;
(7)输出每个人应承担的费用和实际消费总金额。
第3步:描述算法。
假设小组成员有4人,解决个人项目消费金额计算模块的算法可用流程图来描述,请完善算法流程图:
①__i<=n?__;
②__sum4=sum4+p__;
③__sum=sum1+sum2+sum3+sum4__。
【解析】 第2步:(3)若i<=n成立,表示成员数据未处理完, 则转(4)继续处理;若i>n,表示所有成员数据处理完,转(7),输出结果。
第3步:根据第2步进行填空,①由“(3)若i<=n,则转(4),否则转(7)”可知。
②处理第4个成员的费用。
③计算实际消费总金额。
学科网(北京)股份有限公司
$$