教科版 (2019)必修1 数据与计算4.1 算法及其特征精品第1课时教案
展开课题
必修1 4.1 算法及特征 第1课时
单元
4
学科
信息技术
年级
高一
学习
目标
通过有趣的实际问题,熟悉算法的概念,了解算法的要素和重要特征,学会根据实际问题选择恰当的方式来描述算法;通过问题求解,掌握用编程语言实现简单算法。
重点
能够分析问题,设计解决问题的算法,并用恰当的方法描述算法;
了解枚举法的含义,并能使用枚举法解决相关问题。
难点
能够设计出解决问题的算法;能够用枚举法解决相关问题。
教学过程
教师活动
学生活动
设计意图
导入
5分钟
叶达报名参加学校软件开发社团时。面试中有一道IQ题:
有四个装了药丸的罐子,每个药丸都有一定的重量,其中有一个药罐被污染了。每片被污染的药丸比污染前增重1克。只允许称量一次,判断出哪个罐子的药被污染了。
(同座位讨论该问题的解决步骤)
学生思考讨论学校软件开发社团的一道面试题。讨论问题的解决步骤。
通过问题的方式引入本节课的教学,让学生根据具体问题思考算法的设计。
教师:
在生活中有很多类似的问题,解决这些问题需要一定的方法,这种解决的方法实际上就是算法。
学生回忆算法的概念。
让学生回顾算法的概念。
教师:
方法:考虑药丸的质量变化,如果药丸被污染,则增重_____克,否则增重_____克。
从任一药瓶中提取n颗药丸,如果增重n克,则_________;如果没有增重,则______
从第一盒中取出1颗,第二盒中取出2 颗,第三盒中取出3颗,从第四盒中取出4颗(共10颗)。如果增重________克,则________号药瓶被污染。
学生考虑一颗药丸污染后的质量变化。
然后从每个药瓶中取出不同数量药丸的质量变化。
引导学生考虑一颗药丸污染后的质量变化。
和从每个药瓶中取出不同数量药丸的质量变化。从具体的分析中找出问题的解决步骤。
教师:
考虑1颗药丸的质量变化,如果药丸被污染,则增重 1 克,否则增重0 克。
从任一药瓶中提取n颗药丸,如果被污染,则 增重n克 ;否则增重 0 克
分析一颗药丸和n颗药丸,如果被污染的质量变化。
引导学生思考,从一颗药丸和n颗药丸被污染后的质量变化。
教师:
从第一盒中取出1颗,第二盒中取出2 颗,第三盒中取出3颗,从第四盒中取出4颗(共10颗)。如果增重________克,则________号药瓶被污染。
输入:?
计算:?
输出:?
从不同药瓶中取出不同颗数的药丸,思考输入,计算和输出。
引导学生思考算法的基本步骤,输入,计算和输出。
程序源代码
d=int(input(“请输入第颗药丸的标准重量:”))
w=int(input(“y请输入药丸称得的重量:”))
x=v-10*d
print(“被污染的药瓶序号是:”,x)
input(“运行完毕,请按回车键退出…”)
设计和学习程序源代码。
引导学生设计和学习程序源代码。
并在电脑上运行。
总结
计算机解决问题的过程:
1、分析问题
2、设计算法
3、编写程序
4、运行验证
学生和老师一块总结计算机解决问题的过程。
让学生明白计算机解决问题的过程。
活动2
巧用运算,寻找误删的ID号
学校历届校友的海量数据存储在校网络中心服务器中(共10000条,无重复数据),某管理员因为误操作删除了一位校友的ID号(8位整数)信息,恰好在备份数据库中保存了一份所有人员ID号的文件(无重复数据,无序)。怎样快速找出被误删的ID号以便恢复数据?
请同座位同学讨论,用自然语言描述问题求解的算法。
通过学校校友数据,寻找误删的id号。
学生先思考讨论,先用自然语言描述算法。
实例引入,激发兴趣。先让学生用自然语言描述算法,循序渐进的往前走。
教师
方法一: 取出网络中心服务器ID列表中第一条数据;和备份服务器中的ID列表逐条进行对比,如果能够找到相同的ID号,则完成目标,否则取出网络中心服务器ID列表中下一条数据继续比对。
按照该算法解决问题需要10000*10000,1亿次。
方法二:(提示:可以利用异或运算)
异或应用于逻辑运算,其运算法则为:0^0=0,1^0=1,0^1=1,1^1=0。
由于两个相同数异或结果为0,而任何数异或0的结果等于数据本身。因此,可以把两文件中所有ID号直接进行异或,只出现一次的数据就能被找出,并且最后出现的异或结果就是这个数。
(学生可能会提出将中心服务器的ID号全部加起来,然后减去备份服务器的ID号,得到的数就是被删除的ID号,可以让学生比较它和异或的方法)
思考方法一,采用逐条对比的方法。
思考利用异或运算的方法,找出丢失的id号。
引导学生思考同一个问题,不同的解决办法。并比较其效率的高低。
程序代码:
sum1=0 #设置初始值
sum2=0 #设置初始值
f1=pen(r"cpy.txt") #打开备份文件
li=f1.readlines() #读取每行数据
fr line in li:
sum1=sum1+int(line) #将读取的数据做和运算
f1.clse() #关闭备份文件
f2=pen(r"truble.txt") #打开故障文件
li=f2.readlines() #读取每行数据
fr line in li:
sum2=sum2+int(line) #将读取的数据做和运算
f2.clse() #关闭故障文件
print("被删除的ID号是:",sum1-sum2) #输出被删除的ID号
input("运行完毕,请按回车键退出...")
学生设计和学习解决问题的程序源代码,并在电脑中运行。
让学生学习程序设计,学习Pythn语言。
设计学生思考
根据解决“被删除的ID号”算法中的一些规律,思考算法应该具有哪些特征。
算法的特征:0个或多个输入项;1个或多个输出项;算法的确定性
(确定的执行结果或者运算的确定性);算法的有穷性;算法的可行性。
思考算法的特征,包括算法有穷性,可行性。
引导学生掌握算法的特征。
课堂小结
2 分钟
老师带领着学生一起回顾本节课的知识。
和老师回顾总结本节课所学内容。
通过回顾本节课所学,加深对知识的掌握。
高中教科版 (2019)第4单元 计算与问题解决4.1 算法及其特征优秀第一课时教案: 这是一份高中教科版 (2019)第4单元 计算与问题解决4.1 算法及其特征优秀第一课时教案,文件包含41算法及其特征第一课时学案docx、41算法及其特征第一课时教案docx等2份教案配套教学资源,其中教案共9页, 欢迎下载使用。
高中教科版 (2019)4.1 算法及其特征精品第二课时教案及反思: 这是一份高中教科版 (2019)4.1 算法及其特征精品第二课时教案及反思,文件包含41算法及其特征第二课时学案docx、41算法及其特征第二课时教案docx等2份教案配套教学资源,其中教案共9页, 欢迎下载使用。
信息技术必修1 数据与计算4.1 算法及其特征精品第2课时教案: 这是一份信息技术必修1 数据与计算4.1 算法及其特征精品第2课时教案,共4页。