内容正文:
专题6 枚举与解析
2023
知识要点1 解析算法
基本思想:指根据问题的前提条件与所求结果之间的关系,找出求解问题的数学表达式,并通过表达式的计算来实现问题求解。
设计解析算法的一般步骤:
(1)明确问题的前提条件。
(2)明确要求的解。
(3)寻找条件与结果之间的关系式,确保数学表达式的正确性。
(4)在编程中正确描述数学关系式。
(1)载体依附性:即信息必须依附于载体存在,不存没有载体的信息。
(2)时效性:信息(的内容或价值)会随着时间的推移发生变化
(3)共享性:信息可以共享,且在传播的过程中不产生损耗。
(4)可加工处理性、真伪性:信息是可以进行加工的,加工后的信息具有真伪性
(5)价值性:信息的价值包括显性价值和隐形价值两个方面,同时价值的高低具有相对性
2
1.请阅读以下材料,并回答问题:
材料一:珠穆朗玛峰的高度为8 848.86 米。
材料二:有个科学猜想节目:如果有一张足够大的纸,其厚度为0.1 毫米,对折一次纸的厚度增加1 倍。设一张纸的厚度为h对折k 次,那么纸的厚度为h*2k。
材料三:纸对折多少次后可以超过
珠穆朗玛峰的高度的算法流程图表示如下。
(1)材料二中由纸的厚度为h,对折k 次,得出纸的厚度为h*2k,这个过程属于用算法解决问题的哪个步骤_____(单选题填字母:A.抽象与建模B.设计算法C.描述算法)。
(2)材料三中加虚线框的过程属于算法控制结构中的________结构。
(3)用Python 语言实现上述算法,请在划线处填入代码。
h=0.000 1
k=0
while ______________:
k=k+1
h=h*2
print(”需要对折”,k,”次”)
(4)解决此问题的算法是__解析算法__(填“解析算法”或“枚举算法”)。
A
循环
h<=8848.86
解析 (1)用数学符号描述解决问题的计算模型,属于抽象与建模;
(2)有比较框,有环状结构,属于循环结构;
(3)珠穆朗玛峰的高度为8848.86 米,当折叠高度小于该高度,继续循环;
(4)根据问题的前提条件与所求结果之间的关系,找出求解问题的数学表达式,属于解析算法。
2.铁路托运行李,根据行李的重量按下列标准收费:若不超过50千克按每千克0.35元收费,若超过50千克,超过部分则按每千克0.5元收费,行李重量不得超过150千克。设计程序,通过键盘输入托运行李的重量,执行程序后,输出托运行李的费用若行李超过150千克,则显示“行李超重!”。程序运行界面如图所示。
请在划线处填入合适的代码:
x=float(input('请输入行李重量:'))
if ①____________:
print('行李超重!')
else:
if x>50:
y=②______________________
else:
y=0.35*x
print('行李收费:',③_____,'元')
x>150
0.35*50+0.5*(x-50)
y
解析 当重量超过150千克时,显示超重;当超过50千克,少于150千克时,超出部分按每千克0.5元计算,最后的费用存放在变量y中。
知识要点2 枚举算法
基本思想:把问题所有可能的解一一列举,然后逐个判断列举出的可能解是否为正确的解。在列举的过程中,既不遗漏也不能重复。
基本结构:
外层(一一列举) 循环结构
内层(逐个判断) 分支结构
(1)载体依附性:即信息必须依附于载体存在,不存没有载体的信息。
(2)时效性:信息(的内容或价值)会随着时间的推移发生变化
(3)共享性:信息可以共享,且在传播的过程中不产生损耗。
(4)可加工处理性、真伪性:信息是可以进行加工的,加工后的信息具有真伪性
(5)价值性:信息的价值包括显性价值和隐形价值两个方面,同时价值的高低具有相对性
8
3.(2021·11月台州十校高二) 票据中模糊数字推断问题。一张票据上有一个由4 位数字组成的编号,甲说数字编号的前两位数字相同,但都不是零;乙说数字编号的后两位数字是相同的,但与前两位不同;丙说数字编号是一个整数的二次方。试根据以上线索推断出编号。
(1)问题分析
只要一一列举出4 位数字AABB 中A 与B 的所有可能组合,保证A≠B 且A≠0,再验证二次方问题,就可以得到问题的解。一一列举、逐一验证属于用___