高中信息技术浙教版 (2019)选修1 数据与数据结构5.4 数据查找优质导学案
展开课程基本信息
课题
5.4 数 据 查 找 ——查找算法的应用
学习目标
1.能对给定的文件中的数据进行抽象并建立模型。
2.能合理选用数据结构,设计查找算法。
3.能用Pythn语言编写具体的查找程序。
4.能自觉对学习生活具体问题抽象建模、设计算法并编写程序及调试程序。
课前学习任务
1. 体验生活、学习中的查找任务。
课上学习任务
航空公司VIP会员积分查询部分数据(Excel数据)
【学习任务一】
抽象与建模
【学习任务二】
(二)设计算法与数据结构
【学习任务三】编写程序并调试
【学习任务四】学习生活中的应用实践:
校园一卡通号码查询。某校共n名学生,严老师编写了一个校园一卡通号码查询程序,输入号码就能查询该号码所属的班级和学生姓名。如右图所示所有学生数据存储在“校园一卡通.csv”表格中,该表格分别保存了本校所有学生的号码、所在班级和姓名的信息,号码的编码规则为入学年份+班级加身份证号后三位。第i个学生的号码保存在第1列中,对应的班级和姓名保存在第2列和第3列中。输入号码,电脑开始查找该号码的信息,如果找到对应的信息,就显示所属班级和姓名,如果没有找到,则显示“没有查询到该号码信息!”
相应程序如下,请在程序划线①②③处填入相应的代码,把程序补充完整。
imprt csv
flie1=pen('校园一卡通.csv','r')
reader=csv.reader(flie1)
st=[]
fr it in reader:
①
flie1.clse()
# 冒泡排序
fr i in range(1,len(st)-1):
fr j in range(len(st)-1,i,-1):
if ② :
st[j],st[j-1]=st[j-1],st[j]
fr i in range(len(st)):
print(st[i])
# 二分查找
key=input(‘请输入需要查找的卡号:')
i=1;j=len(st)-1
while i<=j:
m=(i+j)//2
if ③ :
i=m+1
else:
j=m-1
if st[i][0]==key:
print(st[0])
print(st[i])
else:
print("没有该号码信息!")
高中信息技术浙教版 (2019)选修1 数据与数据结构5.3 数据排序精品学案: 这是一份高中信息技术浙教版 (2019)选修1 数据与数据结构<a href="/xx/tb_c4005696_t4/?tag_id=42" target="_blank">5.3 数据排序精品学案</a>,共4页。学案主要包含了学习任务一,学习任务二,学习任务三等内容,欢迎下载使用。
信息技术浙教版 (2019)5.3 数据排序优秀导学案: 这是一份信息技术浙教版 (2019)<a href="/xx/tb_c4005696_t4/?tag_id=42" target="_blank">5.3 数据排序优秀导学案</a>,共5页。学案主要包含了学习任务一,学习任务二,学习任务三,学习任务四,学习任务五,学习任务六等内容,欢迎下载使用。
信息技术浙教版 (2019)5.2 迭代与递归优质学案: 这是一份信息技术浙教版 (2019)<a href="/xx/tb_c4005695_t4/?tag_id=42" target="_blank">5.2 迭代与递归优质学案</a>,共3页。