《微项目2 用枚举算法寻问题多解》教学设计
一、目标确定
(1)教学目标
1、通过生活中问题解决的方法引出枚举算法,根据定义说出对枚举算法中枚举对象、枚举范围和判定条件的理解,并理清算法程序的编程思路。
2、通过分别编写数数小程序和“6”的程序,引导学生由浅入深掌握枚举算法的设计方法。
3、通过编写密码的程序,引导学生利用枚举算法思路解决实际生活问题。
4、通过生活中一个买奖品的例子,引导学生尝试对多个枚举对象js交互效果有哪些求解的方法,将所学方法运用到生活中为生活服务。
(2)教学重点和难点
1、教学重点:掌握枚举算法的设计方法,结合Python编程技能,学会编写枚举算法程序解决实际问题。
2、教学难点:判定条件的确定及通过缩小枚举范围、减少枚举对象等进行程序的优化。
一、评价设计
(一)过程性评价
1、针对目标1达成情况的评价
评价目标:通过生活中问题解决的方法引出枚举算法,根据定义说出对枚举算法的枚举对象、枚举范围和判定条件的理解,并理清算法程序的编程思路。
评价任务:学生对生活中一个小问题“在100页的文集中出带数字6或者6的倍数的页码。”讨论求解方法,得出这种问题可以通过逐一列举所有可能的答案来解决,这种方法即为枚举法。学生根据定义提炼关键词,教师根据关键词总结出枚举算法三要素:西汀能根治早泄吗枚举对象、枚举范围、判定条件,通过理顺思路来出编程所需要的循环和判断结构。
评价方式:教师认真倾听,提炼出学生答出的关键词并适时总结提升。base编码解码器
评价标准:描述以方法表述出来即可。
2、针对目标2达成情况的评价
评价目标:通过分别编写数数小程序和“6”的程序,引导学生由浅入深掌握枚举算法的设计方法。
评价任务:编写数数小程序和“6”的程序。
评价方式:教师展示学生程序编写步骤及结果。由小老师们阐述易错点,师生共同总结提高。
评价标准:编写程序的速度和正确率以及是否独立完成。
3、针对目标3达成情况的评价
评价目标:通过编写密码的程序,引导学生利用枚举算法思路解决实际生活问题。
评价任务:学生参照导学案,可以在活动2的程序基础上修改也可以重新写出密码的程序。
评价方式:展示学生编程步骤及输出结果,教师回忆得出正确的密码答案,对出密码的同学进行表扬,其他同学修改完善。
评价标准:根据程序输出的结果是否准确进行评价。
4、针对目标4达成情况的评价
评价目标:通过生活中一个买奖品的例子,引导学生尝试对多个枚举对象求解的方法,将所学方法运用到生活中为生活服务。
评价任务:学生参照课本砝码称量的程序,写出买奖品程序。
评价方式:展示学生编程步骤及输出结果。
评价标准:要求快速正确输出结果,师生交流选出最合适的数据组合。
(二)终结性评价
评价目标:如何根据任务要求,编写正确的程序。
评价任务:有的小组同学在“6”程序的编写时又快又好的完成任务,有的小组同学能够快速编写密码的程序,有的小组同学属于慢热型能够扎实地将前两个程序写法掌握好在此基础上写出多个枚举对象的程序。每个小组讨论选出一个代表根据自身特长来展示。
评价方式:小组代表汇报。
评价标准:以描述清楚为主要评价依据。
三、教学过程设计
(一)情境导入
教师引导学生思考一个问题,怎样在100页的文集中出带数字6或者6的倍数的页码。 通过分析生活中常用的方法引出枚举算法,出示课题。
(二)项目要求
1、理解枚举算法的枚举对象、枚举范围和判定条件,理清算法程序的编程思路。
2、掌握枚举算法的设计方法,写出简单的“6”程序。
3、利用枚举算法解决实际生活问题—编写密码的程序。
4、尝试对多个枚举对象求解的方法,将所学方法运用到生活中为生活服务。
(三)项目实施
活动一:由生活算法引出枚举算法
【教师活动】结合第一单元所学内容提出的一个小问题“怎样在100页的文集中出带数字6或者6的倍数的页码。”
培训班招生方案有哪些【学生活动】学生讨论求解方法,得出这种问题可以通过逐一列举所有可能的答案来解决。
【活动交流】师生交流,确认这种一一列举可能答案的方法为枚举法。
【设计意图】由生活中问题的解决入手,让学生明确枚举算法的应用。
最好的python入门教材活动二:探究用枚举算法编程的方法
【教师活动】课件出示枚举算法的定义,引导学生从定义中提取关键词:1、枚举对象2、判定条件3、枚举范围,课件总结这是枚举算法的三要素,教师重点解释枚举对象指的是解决问题所需要逐一列举的研究对象。
教师引领学生在明确三要素后,逐一列举所有枚举对象,运用数据可视化设计案例判断条件来判定是不是真正的解。 分析逐一列举要用到程序结构中的循环结构,用条件判定要用到选择结构。
教师引导学生写出从1-100数数的程序,然后在数数程序基础上添加选择结构语句,实现在循环过程中的有效判断,师生共同分析判断条件:带数字“6”或者6的倍数的表述方式。
【学生活动】针对课前的小例子说出枚举对象是1-100的自然数,判定条件是含“6”的数(明6)或不含“6”且是“6”的倍数的数(暗6),枚举范围是1-100之间。
学生写出简单的数数程序实现计算机输出从1到100的自然数。
学生在数数程序的基础上添加判断条件,构成“6”的程序。
【活动交流】学生小组交流,对比用不同循环结构写的程序及其输出结果,总结合理的编
程方法。写出程序并运行正确的同学对有困难的同学进行辅导纠错。并说出发现的其他同学的错误,师生共同分析纠错,加深印象,以求今后避免犯错。
【设计意图】
教师将一个程序分为两个简单的小程序让学生有梯度的完成,第二个程序在原有基础上改进即可,这样可以大大降低程序的难度,让学生敢于尝试并乐于接受。
活动三:用枚举算法解决生活中的问题
【教师活动】提出问题:“由于移动支付的广泛应用,自己的银行卡退休了,长时间不用导致忘记了密码,只记住密码的前三位666,后三位是个三位数,并且密码个位数是8,其他位含有1但不确定在哪个位置。”引导学生思考用枚举法出后三位密码。
【学生活动】小组合作交流,根据导学案分析:1、通过取余运算 (%)判断个位数。如x%10==7成立,则可判断个位数为7。
2、使用整除运算(//)取得该自然数的前两位数,如x//10可得出三位数的前两位, 利用in判断前两位中是否有1。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论