《算法》教学设计-优秀教案

更新时间:2023-05-28 11:43:46 阅读: 评论:0

-《算法》教学设计
课题:算法
执教:
学校:
学科:
信息技术
课时40分钟
三维目标
知识与技能:
1、了解算法的基本概念及其描述;
2、学会绘制流程图描述算法;
3、学习常用的算法----解析法和枚举法.
过程与方法:
学会分析问题,提取问题形成算法描述,掌握流程图的概念与制作方法。
情感、态度
与价值观:
通过对问题的研究和分析,设计算法对问题进行求解,提高分析问题和解决问题的能力,体会算法分析的魅力。
重点与难点
教学重点:
理解并学会利用算法分析问题并形成描述
教学难点:
1、用流程图表示算法
2、算法设计与分析
学情分析
本节课的学习对象是八年级的学生,在前面的学习中,学生对程序设计有了一定的了解而对算法的概念及描述还比较模糊,没有完整的知识结构体系。本课需要学生了解基本算法,学会用流程图描述算法,学会设计算法并能利用算法来分析解决生活中的问题。
教材分析与教法分析
  本节课是苏教版八年级第4章第2节《算法》中的一个知识点——《算法实例》内容。本节介绍了算法实现的基本方法,让学生体验绘制流程图描述算法的过程,对比与自然语言描述算法的区别。每一个环节都体现了解决问题的逻辑思维,从一开始的导入到最终需要学生自己思考,能利用流程图描述算法,对学生来说有点难度,也是一种挑战,会激发了学生的兴趣,为进一步学习注入动力
考虑到算法对于学生而言,比较陌生,甚至会有一定难度,需要一定的协助合作,故而主要使用任务驱动,分组教学,教师讲解引导等教学方式实施教学。
学生准备
教材、草稿纸
机房软件准备
VB、画程
教学过程
教学环节
教学内容
教师活动
学生活动
设计意图
情境导入
导入(3min)
课前小游戏:偷龙转凤
1、交换两容器中的液体。
2、学生整理步骤
教师板书步骤并总结:
这个小游戏中,包含了解决问题的方法(引入空容器),也包含了操作步骤。
学生欣赏、思考并回答
游戏导入,引出算法的概念:解决问题的方法和步骤
新课讲授
算法概念(3min)
算法故事
(3min)
一、算法概念(PPT)
教师:总结并介绍算法
概念:解决问题的方法和步骤
  计算机就是靠执行计算机程序工作的。
  沃斯公式:
程序=算法+数据结构
1、同一问题,可用不同算法。
2、算法的优劣直接影响程序质量,算法是程序的灵魂
二、算法小故事
  华罗庚“烧水泡茶”(PPT)
算法(一)  VS  算法(二)
问:同学们觉得哪个算法更好呢?为什么?
(时间统筹法)
认真听讲
积极思考
学生听讲思考并回答
让学生了解关于算法的知识,体会算法与程序的关系
让学生体验算法的两个性质1、2
新课讲授
流程图设计(15min)
三、算法描述
  教师:算法是可以描述的
1、自然语言:用语言文字描述
(PPT:交换液体自然语言描述与流程图,请学生分析比较。)
缺点:烦琐、冗长
2、流程图:用图形符号表示
优点:直观、简洁
、流程图符号介绍(PPT)
、流程图基本结构介绍
顺序、分支、循环
3、实践学习-我来“画一画”
教师示范使用流程图描述算法:
、设计算法
、绘制流程图
4、学生实践:(抽奖活动)
利用流程图来描述算法:
小明参加了公司举办的抽奖活动,他计划:如果自己中奖了,就买房买车,享受生活。如果不中奖,就继续认真上班。请你设计一个流程图描述这次抽奖活动。
学生练习设计并绘制流程图。
练习检验:教师利用抽奖软件,用学号抽出学生上台示范。
教师完善讲解
学生比较分析两种描述方式的异同,体会其特点
学生回答
学生动手操作练习
通过对比让学生了解并熟悉算法描述的两种方式的优劣性
让学生了解流程图,学习使用流程图描述算法。
用趣味性实例提升学生学习兴趣
拓展活动
学生拓展
用流程图描述:求“1+2+3+……+100”的值
教师导析:本题应采用什么结构的流程图?
课后拓展
拓展学习循环结构
算法实例
(10min)
四、算法学习
1、教师介绍常用算法有:
PPT:解析、穷举、递推、递归、贪心、动规、深搜、宽搜……
  引出本节课要学习的算法:解析法与枚举法
2、算法实例:
解析法~
概念:先找出数学表达式,再求出表达式值。
例1~三角形面积:
PPT:题目
Step1:分析问题
读入三角形的底和高,根据三角形面积公式:S=a*h/2求出结果
Step2:用流程图描述算法
、枚举法~
概念:用计算机运行速度快的特点来穷举可能的情况。
例2~水仙花数
PPT:题目
Step1:分析问题
题目有哪些已知条件?
可以在什么范围内枚举?如是4位数,枚举范围是什么?
枚举:在数据范围一个个去判断是否满足条件,如满足就成立。
Step2:用流程图描述算法
    学生练习
    教师讲评
教师总结:刚才的解法是拆分三位数,然后根据条件进行判断是否成立。
学生听讲
学生回答:
1、三位数
2、关系式条件成立
  100~999
1000~9999
让学生知道:解决问题应该从分析问题入手
实例拓展
(5min)
思维拓展:水仙花数解法二
问:有没有其他的解法?
教师启发:
    现在我们换一个思路:
解法一是拆分三位数,我们能不能逆其道而行,从组成这个整数的每一位数字出发,合成三位数,会怎么呢?
  请学生回答后,统一分析问题:
Step1:分析问题
令百位数a取1~9,十位数b取0~9,个位数c取0~9,则对应的三位数:
  合成后的数: x=a*100+b*10+c
判断条件a*a*a+b*b*b+c*c*c=x是否成立。
Step2:用流程图描述算法
  学生练习
教师评讲
学生思考回答
让学生学会深入探索问题,学会逆向思维,并深刻体会“同一问题可以有不同算法”这一算法性质
算法实例拓展
(2min)
百钱百鸡
问题描述:公鸡5元,母鸡3元,小鸡3只1元,100元正好买100只鸡,求出所有的购买方案,各鸡买几只?
  分析问题:题目有什么已知条件?需要枚举什么?可在什么范围内枚举?请学生回答
学生思考回答
拓宽学生视野,让学生学会从问题出发分析问题
百钱百鸡算法探讨
(3min)
算法设计1:
穷举公鸡:(x=1;x<=20;x++)
穷举母鸡:(y=1;y<=33;y++)
穷举小鸡:(z=1;z<=100;z++)
如果条件
(100==x+y+z && 100==5*x+3*y+z/3)成立,则输出购买方案。
问:最坏情况,需要枚举多少次?
算法分析:此算法需要枚举尝试20*33*100=66000次。算法的效率显然太低。
深入思考:如何优化算法?
优化算法:
我们分析题目要求时发现,买小鸡的钱应该为整数,那么小鸡的数量Z则应该是3的倍数,所以为了减少枚举次数,我们可以对算法1进行改进:
  把对小鸡数量Z的循环语句步长设为3,即Z=Z+3,在3~99的范围内,将3的倍数枚举出来,这就是小鸡的数量。
这个改进,可进一步提高(算法1)的效率,减少循环次数
PPT:流程图
深入思考:还有没有不同的算法?
算法设计2:
在公鸡(x)、母鸡(y)的数量确定后,小鸡的数量z就固定为100-x-y,无需再进行枚举了。
  此时约束条件只有一个:
5*x+3*y+z/3=100.
穷举公鸡:(x=1;x<=20;x++)
穷举母鸡:(y=1;y<=33;y++)
小鸡=100-公鸡数-母鸡数
如果条件
(z能整除 3)并且( 5*x+3*y+z/3==100) 成立,则输出购买方案。
算法分析:以上算法只需枚举尝试20*33=660次。实现时约束条件限定Z能被3整除时,才判断“5*x+3*y+z/3=100”。这样省去了z不整除3时的算术运算和条件判断,进一步提高了算法效率。
问:最坏情况,需要枚举多少次?
算法(1)66000次  VS  算法(3)660次
学生探索思考
学生深入思考回答
学生思考回答
通过综合练习让学生熟悉本节课所学内容
让学生学会分析算法时间复杂度
让学生学会优化算法
让学生体验优化算法的好处,体验不同算法与程序效率的相关性

本文发布于:2023-05-28 11:43:45,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/zhishi/a/1685245426182780.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:《算法》教学设计-优秀教案.doc

本文 PDF 下载地址:《算法》教学设计-优秀教案.pdf

标签:算法   学生   流程图   分析   描述   问题
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 实用文体写作网旗下知识大全大全栏目是一个全百科类宝库! 优秀范文|法律文书|专利查询|