“算法”教学设计
■教学目标
1.知识与技能
(1)了解算法的基本概念和算法在程序设计中的重要性
(2)学会用自然语言和流程图来描述算法。
(3)知道算法有优劣之分,能有意地设计与筛选算法,理解“算法”是程序设计的灵魂。
2.过程与方法
通过“点人数”及两道题,理解算法的优劣能够影响我们做事的效率和编程的质量。通过读图,学会看流程图,并能够用流程图描述一些简单的算法。
3.情感态度与价值观
通过对问题的算法分析与表达,使学生感悟到生活中处处有算法,算法并不神秘,提高学生学习的信心与兴趣。
4.行为与创新
■课时安排:1课时
■教学重点与难点
1.教学重点
(1)算法在程序设计中的重要性
(2)用自然语言和流程图描述算法
2.教学难点
(1)用流程图描述算法
(2)将实际问题抽象成计算机解决问题的算法
■教学方法与手段
任务驱动法、知识迁移法、交流讨论法
■课前准备
PPT教学课件,LearnSite教学平台
■教学过程
教学 环节 教学活动 学生活动 设计意图
情境导入 教室里坐了一些听课的老师和学生,谁能告诉我教室里有多少人?
除了数数外,还有其它的好办法吗?
老师组织师生互动,演示2阶乘法
两种方法都可以得到教室里的人数,但是哪一种方法你觉得比较好,为什么?
我们把解决问题的方法和步骤称之为算法。
生活中我们遇到问题的时候会思考去寻找一个较好的方法,同样我们在编写程序的时候也要探寻一个较好的算法。 回答得到教室里人数的方法 通过生活中的实际案例,体会解决问题方法的多样性,同时,引出为何要深入研究算法
一、算法的重要性
1、计算3+4+5+…+103和。
方法一:
Dim s As Long
s = 0
For i = 3 To 103
s = s + i
Next i
Print s
方法二:
Dim s As Long
s = 0
s = (3 + 103) * 101 / 2
Print s
例2:编程找出200~300中能被9整除的数。【整除的表达式 x/9=Int(x/9)】
算法一:
For i = 200 To 300
If i / 9 = Int(i / 9) Then Print i
Next i
算法二:
For i = 207 To 300 Step 9
Print i
Next i
算法的好坏,直接影响着程序执行的效率
一个好的算法,正确,速度快,占用内容少
二、如何描述算法
一个好的算法如何告诉别人
1、自然语言
简单,明了,直接
但有时候会…
他背着总经理和副总经理偷偷地把这笔钱存入了银行。
谁把钱存入了银行?
例1:将a加b除以a减b的值赋给变量x
X=a+b/a-b
X=(a+b)/(a-b)
X=(a+b)/a-b
X=a+b/(a-b)
2、流程图
流程图,就是用图形符号来描述解决问题的过程,其优点是直观、简洁、易懂,并且逻辑关系清晰。
符号
符号名称
含义
起止框
表示算法的开始和结束
处理框
表示对框内的内容进行处理
输入/输出框
表示输入或输出操作
判断框
表示对框内的条件进行判断
流程线
表示流程的方向
3、根据所给流程图,判断程序的运行结果
图一:
图二:
三、绘制流程图
1、探索Visio工具软件的使用
2、【拓展练习】
从键盘输入两个不同的数,然后显示大的数?请分别用自然语言与流程图来描述你的算法。
思考求和的不同方法,体会到算法的重要性,算法有优劣,选择较优的算法
进一步理解算法的重要性
体会自然语言的优缺点
掌握几个几何图形在流程图中的作用
阅读流程图,加深对流程图的理解
分析问题,找出算法,并能用流程图描述算法,
通过实践,让学生体会到优化程序,可以提高程序的执行效率
引出流程图,并了解流程图的优缺点
通过阅读流程图,巩固算法描述的知识
通过学生自主设计流程图,培养学生应用“算法描述”解决问题的能力
小结 两种方法的优缺点
■教学反思
■教学点评