3.2《算法及其描述》-2023—2024学年粤教版(2019)-数据与计算必修1-课后练习

资源下载
  1. 二一教育资源

3.2《算法及其描述》-2023—2024学年粤教版(2019)-数据与计算必修1-课后练习

资源简介

算法及其描述练习题
(粤教版·必修一《数据与计算》)
一、单选题(共15题,每题5分,共75分)
1. 下列关于算法的说法,正确的是(  )
A. 算法就是最终写出的计算机程序
B. 算法是解决问题的方法和步骤
C. 同一问题只能用一种算法来解决
D. 算法不需要考虑执行步骤的先后顺序
2. 算法应该具有五个特征:有穷性、确定性、可行性、数据输入和(  )
A. 复杂性
B. 随机性
C. 数据输出
D. 冗余性
3. 以下关于算法“有穷性”的描述,正确的是(  )
A. 算法的执行步骤必须是有限的
B. 算法的输入数据必须是有限的
C. 算法的输出结果必须是唯一的
D. 算法的运行时间越短越好
4. 下列关于算法“确定性”的理解,正确的是(  )
A. 算法的执行结果必须是确定的数值
B. 算法的执行步骤必须唯一确定,没有歧义
C. 算法中的变量取值必须是整数
D. 算法中不能出现循环结构
5. 以下属于算法“可行性”要求的是(  )
A. 算法必须能在计算机上运行
B. 算法的每一步都能在有限时间内被基本操作完成
C. 算法必须接收多个输入
D. 算法的输出必须是一个数值
6. 算法的描述方式中,使用流程图符号来描述算法过程的方法是(  )
A. 自然语言描述法
B. 流程图描述法
C. 伪代码描述法
D. 程序代码描述法
7. 下列关于自然语言描述算法的说法,错误的是(  )
A. 自然语言描述算法通俗易懂,容易掌握
B. 自然语言存在歧义性,可能导致算法描述不精确
C. 用自然语言描述包含多分支或多循环的算法时,表达不够清晰
D. 自然语言描述法输出结果绝对准确,不会产生任何歧义
8. 以下哪项是流程图中表示“起止”的符号(  )
A. 矩形 □
B. 菱形 ◇
C. 圆角矩形/跑道形 ︵
D. 平行四边形
9. 以下关于用伪代码描述算法的说法,正确的是(  )
A. 伪代码就是高级程序设计语言
B. 伪代码描述算法需要用图形符号
C. 伪代码介于自然语言和计算机语言之间,书写方便,易于理解
D. 伪代码只能在特定计算机上运行
10. 在算法中,需要根据某一条件是否成立来决定执行不同分支的结构是(  )
A. 顺序结构
B. 选择结构(分支结构)
C. 循环结构
D. 递归结构
11. 下列算法控制结构中,主要用于处理需要重复执行操作的是(  )
A. 顺序结构
B. 选择结构
C. 循环结构
D. 模块化结构
12. 某算法的步骤如下:
① 输入两个实数a和b
② 计算c = a + b
③ 输出c的值
该算法属于(  )
A. 顺序结构
B. 选择结构
C. 循环结构
D. 分支结构
13. 关于算法的评价标准,以下说法正确的是(  )
A. 正确性是最基本的标准,算法必须能得出正确结果
B. 算法只要能正确运行,可读性和运行时间都不重要
C. 算法的运行时间与输入规模无关
D. 一个算法没有输出也是有意义的
14. 辗转相除法(欧几里得算法)是(  )
A. 一种求两个数最大公约数的经典算法
B. 一种将十进制数转换为二进制数的方法
C. 一种对数组元素进行排序的算法
D. 一种在有序列表中查找特定元素的方法
15. 下列关于算法三种基本控制结构之间关系的说法,正确的是(  )
A. 三种基本控制结构只能单独使用,不能组合
B. 任何复杂的算法都可以用三种基本控制结构组合表示
C. 循环结构中不能包含选择结构
D. 选择结构比顺序结构更重要
二、填空题(共10题,每题2分,共20分)
1. 算法是指在__________步骤内求解某一问题所使用的一组定义明确的规则。
2. 一个算法可以有零个或多个__________,但必须有一个或多个__________。
3. 描述算法的常用方法有自然语言描述法、__________描述法和__________描述法。
4. 在流程图中,__________(◇)符号表示判断或条件分支。
5. 伪代码是一种介于__________和__________之间的文字和符号来描述算法的方法。
6. 算法的三种基本控制结构是__________结构、__________结构和循环结构。
7. 判断一个算法的好坏,可以从__________、可读性、时效性和__________等方面来评价。
8. 用程序流程图描述算法时,矩形“□”表示__________框。
9. __________结构表示程序中的各步操作按出现的先后顺序执行。
10. 辗转相除法是欧几里得提出的算法,常用于求两个正整数的__________。
三、情景作答题(共3题)
情景一:奶茶店的点单与配料统计
奶茶店老板为了让顾客购买不同口味的饮品,准备制作一张价目表。其中三种热门奶茶的价格分别为奶茶A(6元)、奶茶B(5元)、奶茶C(4元)。某顾客要花50元购买这三种奶茶,要求每种至少购买一杯。请你写出一套限定每类至少1杯的算法,找出所有满足条件的购买方案。
请分别用自然语言和伪代码描述解决此问题的算法。(10分)
情景二:算法带来的网络便利与担忧
张明同学在日常生活中深受“算法”的影响:上音乐App时,“为你推荐”总能有他喜欢的歌;在网购平台购物,每次都能看到“猜你喜欢”的精致好物。但张明发现身边的同学也正面临一些困惑:想在网上看一些全新的内容,需刻意改变搜索习惯才能突破信息茧房;每次看到优惠价商品匆忙下单,却发现几位朋友的同款商品价格却不尽相同。
问题:
1. 音乐App和网购平台服务于用户的个性化推荐,背后运用了怎样的算法思想?这主要体现了算法的哪一特征?(4分)
2. 张明同学的同学们遇到的“信息茧房”与“大数据杀熟”,从算法的角度分析是什么原因造成的?作为高中生,应树立怎样的算法社会责任感?(8分)
情景三:自助通道与人员流动规划
学校新学期为了统筹住校生的进出校时间,在原有两道校闸机的基础上,新增了一道校门车牌识别通道。学生宿舍区也通过比对新增宿舍门禁刷卡机与通道监控后台的数据,对住校生每月的进出校时间进行算法拆解分析。学校据此优化了各自助通道与高峰时段的人员开放安排。
问题:
1. 学校对进出宿舍的人员刷卡记录进行数据比对,这属于模拟与解决生活中哪类问题?它是通过什么样的数据、算法来辅助决策的?(6分)
2. 如果要对住校生进出宿舍区的时间进行“在校时间”数据分析,其基本步骤是怎样的?请简要说明其核心算法是如何设计与运行的。(6分)
参考答案与解析
一、单选题答案解析
1. B
解析:算法是用计算机求解某一问题的方法,是能被机械地执行的动作或指令的有穷集合。它强调的是解决问题的步骤和规则,而不是最终的文字代码,同一问题也可以有多种不同的算法。
2. C
解析:算法的五个特征包括有穷性、确定性、可行性、数据输入和数据输出。没有输出的算法是没有意义的。
3. A
解析:有穷性要求算法在执行有穷步之后必须结束,且包含的计算步骤是有限的。B、C、D都不属于有穷性的核心含义。
4. B
解析:确定性要求算法执行的每一个步骤必须有确切的定义,不能出现模棱两可的情况。
5. B
解析:可行性要求算法中执行的任何计算步骤都可以被分解为基本的可执行操作,每个计算步骤都可在有限时间内完成。
6. B
解析:算法描述有自然语言描述、流程图描述和伪代码描述三种常用方法。利用流程图符号来描述算法过程称为流程图描述法。
7. D
解析:自然语言描述算法通俗易懂,但含有多分支或多循环时尤其难以清晰表示,且因自然语言的歧义性容易导致算法描述不确定性,并非绝对准确。D表述错误。
8. C
解析:流程图中常用符号中,圆角矩形表示起止;矩形表示处理;菱形表示判断;平行四边形表示输入/输出。
9. C
解析:伪代码介于自然语言和计算机语言之间,它不用图形符号,书写方便,格式紧凑,易于理解,便于向计算机语言过渡。
10. B
解析:选择结构表示程序的处理步骤出现了分支,需要根据特定的条件选择其中的一个分支执行。
11. C
解析:循环结构表示程序反复执行某个或某些操作,直到判断条件满足才终止。
12. A
解析:该算法的步骤按出现的先后顺序依次执行,属于典型的顺序结构,没有分支和循环。
13. A
解析:正确性是对给定的问题可以得出正确的结果,是评价算法优劣的最重要的标准。算法必须有至少一个输出,且可读性和运行时间与问题规模密切相关。
14. A
解析:辗转相除法是欧几里得提出的经典算法,用于求两个正整数的最大公约数。
15. B
解析:任何复杂的算法都可以用顺序、选择和循环三种基本控制结构组合来表示。这三种结构可以嵌套组合,并非孤立使用。
二、填空题答案解析
1. 有限
解析:算法是指在有限步骤内求解某一问题所使用的一组定义明确的规则。
2. 输入;输出
解析:一个算法可以有零个或多个输入,但必须有一个或多个输出。
3. 流程图;伪代码
解析:算法的三种常用描述方法是自然语言描述法、流程图描述法和伪代码描述法。
4. 菱形
解析:在流程图中,菱形表示判断或条件分支。顺序结构中的处理框为矩形,起止框为圆角矩形,输入输出框为平行四边形。
5. 自然语言;计算机语言
解析:伪代码是一种介于自然语言和计算机语言之间的文字和符号来描述算法的方法。
6. 顺序;选择
解析:算法的三种基本控制结构是顺序结构、选择结构和循环结构。
7. 正确性;空间复杂度
解析:判断算法优劣可从正确性、可读性、时间复杂度、空间复杂度等方面评价。
8. 处理
解析:矩形“□”在流程图中表示处理框,用来表示处理或计算步骤。
9. 顺序
解析:顺序结构表示程序中的各步操作按出现的先后顺序依次执行。
10. 最大公约数
解析:辗转相除法是欧几里得提出的经典算法,用于求两个正整数的最大公约数。
三、情景作答题答案解析
情景一:奶茶店的点单与配料统计
1. 用自然语言描述算法
① 设定变量t = 0(用于记录满足条件的方案总数);
② 设奶茶A的杯数为x,奶茶B的杯数为y,奶茶C的杯数为z;
③ 令x = 1(因为每种至少买一杯,所以从1开始尝试);
④ 令y = 1;
⑤ 令z = 1;
⑥ 检查6x + 5y + 4z是否等于50,如果等于50,则输出这个购买方案(x,y,z的值),并将t增加1;
⑦ z = z + 1;
⑧ 如果z ≤ 12,转到步骤⑥;否则继续步骤⑨;
⑨ y = y + 1;
⑩ 如果y ≤ 10,转到步骤⑤;否则继续步骤 ;
x = x + 1;
如果x ≤ 8,转到步骤④;否则继续步骤 ;
结束,并输出“共有t种购买方案”。
2. 用伪代码描述算法
t = 0
for x in range(1, 9):
for y in range(1, 11):
for z in range(1, 13):
if (6x + 5y + 4z == 50):
t = t + 1
输出x, y, z
输出“共有t种购买方案”
情景二:算法带来的网络便利与担忧
1. 应用算法与特征分析
音乐App和网购平台运用的是个性化推荐算法(如协同过滤算法、基于内容的推荐算法等)。这主要体现了算法可行性和有穷性的特征——推荐算法在有限步骤内根据用户的历史数据分解出可执行的操作,形成用户画像,从而给出精准的个性化推荐。
2. “信息茧房”与“大数据杀熟”的成因及社会责任
信息茧房成因:推荐算法基于用户过往行为选择推送同类内容,用户长期接受同质化信息,不知不觉被算法桎梏在狭窄的信息世界,导致认知局限性与观点固化。
大数据杀熟成因:算法利用用户数据(消费习惯、价格敏感度等)进行差异性分析,向不同用户展示不同价格,是一种滥用用户数据的算法不公现象。
社会责任与应对:高中生应在学习算法知识的同时树立正确的算法价值观,积极迎接算法时代的挑战。一方面应加强个人数据保护意识;另一方面也要具备辨别信息真伪与公平性的能力,不做算法盲目的“投喂者”,善用算法而非被算法所控,在实践中培养信息社会责任感。
情景三:自助通道与人员流动规划
1. 问题类型与辅助决策方法
学校通过对宿舍门禁刷卡记录与监控后台数据进行比对,属于对人员流动规律的数据关联分析。该问题运用数据挖掘中的关联分析算法,通过扫描历史记录发现不同时段住校生进出频率的规律模式,为通道开放时段提供支持度与置信度较高的决策依据。
2. “在校时间”数据分析的基本步骤
步骤:
① 数据采集:从门禁系统中获取住校生每日刷卡进出校园的原始记录;
② 数据清洗:剔除无效或异常的刷卡记录;
③ 数据处理:计算每个住校生当日进出学校的时间差,得出“在校时长”;
④ 数据汇总:按年级、班级或宿舍楼为单位,统计平均在校时长与高峰离校时段;
⑤ 结果输出:输出分析图表,向学校管理方提供优化辅助决策。
核心算法设计与运行方式:
核心采用线性遍历比较与分类汇总算法。首先设定学生学号为检索关键字,循环遍历某一周的刷卡记录,对每日数据进行有序读入判断;当检测到同一人在一天中有“外出”和“返校”两个记录时,计算两次时间差值;最后利用循环将累计结果按班级汇总,平均后输出。该算法可以解决谁是主要住校人员、不同时段进出比例等问题,并进行规律预测。

展开更多......

收起↑

资源预览