教学设计
【学习目标】
1.
知识目标
了解算法的概念和发展历史
2.
技能目标
学会分析问题,提取问题形成算法描述,掌握流程图的概念与制作方法
3.
情感、态度与价值观目标
算法是解决问题的重要手段,通过对问题的研究和分析,设计算法对问题进行求解,提高分析问题和解决问题的能力,体会算法分析的魅力
【学情分析】
八年级学生对于计算机有浓厚的学习兴趣,算法、流程图等对于他们却较为抽象,学生接受起来有一定的难度。在教学中,教师应从实例入手,让学生理解,让学生了解算法的自然语言描述,进而了解算法的流程图表示及了解计算机语言。
【教材分析】
算法是解决问题的重要手段,通过本课的学习,让学生掌握算法的概念、特征及其表示方式,提高学生分析和解决问题的能力,体会算法分析的魅力。
【学习策略】
本课内容较为抽象,主要通过“任务驱动”教学法,在学生自主探究的基础上结合小组协作,讲练结合来突破重难点。
【教学过程】
(1)
创设情境,激发兴趣
1.
考考你的智力
一位农夫要带一只狼,一只羊和一颗白菜过河,如果没有农夫看管,狼就要吃羊,羊要吃菜,但船很小,只够农夫带一样东西过河。问农夫该如何解决此难题?
2.
学生回答
引导学生思考并用自然语言描述解决方法。
(2)
启发探究
学习新知
1.
由牧羊人过河引出算法的概念,请学生举出生活中运用算法的例子,重点理解什么是算法。
2.
算法是解决问题的方法和步骤。要解决某个问题,首先对问题进行观察、分析、细化,收集必要的信息,然后根据已有的知识、经验进行判断推理,尝试按照一定的方法和步骤去解决问题。解决问题的过程就是实现算法的过程。
思考:算法有哪些特征?
有穷性:算法中的运算次数是有限的
明确性:算法中每一步必须有清楚的定义,不能有二义性或模棱两可的解释。
可行性:每一个操作都是可行的,都能得到正确的结果。
可以没有输入量必须有输出。
回顾练习,知识巩固
3.
算法的表示形式
?
自然语言
?
流程图
?
计算机语言
计算机无法识别自然语言和流程图描述的算法,只有通过计算机语言将算法编成程序。
程序:一系列计算机指令的有序集合
计算机语言
Basic
Pascal,C,C++,Visual
Basic,Java
设计一个算法,对任意输入的3个整数x,y,z,找出并输出其中的最大值max
计算机语言
Dim
x
as
Integer
Dim
y
as
Integer
Dim
z
as
Integer
If
x>y
then
max=z
else
max=y
If
z>max
then
max=z
Text4.text=Str(max)
(三)巩固知识
应用提高
回顾练习,知识巩固
学生完成课件上的巩固练习,教师巡回并个别指导,最后统一讲解。
(四)知识梳理
总结归纳
通过本课的学习,你有什么收获?
学生总结,算法的概念,算法的特征,算法的表示形式,包括自然语言、流程图和计算机语言。
(五)作业布置
请完成课本第5页的练习,写出西红柿炒蛋的算法
【板书设计】
算法基础知识
算法的概念
算法的特征
算法的表示形式1.
习题:用自然语言和流程图分别描述判断一个数是否为正数的算法。说明:即输入一个数a,判断它是否为正数,并输出yes或no。
2.下列叙述正确的是(
)
A采用自然语言描述算法最为直观形象
B可以用流程图来表示一个解决一个问题的算法实现
C算法只能用编程代码的方式来实现
D采用流程图描述算法更为通俗易懂,但容易产生二义性
3.下列问题不能用算法描述的是(
)
A已知a、b、c的值,求一元二次方程ax2+bx+c=0(a≠0)的实数根
B计算某个班级语文成绩的平均分
C列出方程y=2x+1的所有实数解
D根据圆的半径求圆的面积和周长
4.
“剥花生”问题的算法描述如下:
①检查袋中是否还有花生;
②若有,将花生剥壳,将花生放入碗中,将壳放入垃圾桶并返回①;
③若无,则算法结束;则,该算法的表示形式为(
)
A流程图
B自然语言
C计算机语言
D代码
5.
求两个数x、y中的较小数的算法有如下步骤,其正确顺序为(
)
①用公式计算较小数min=(x+y-|x-y|)/2
②输入两个数x、y
③结束
④输出变量min
A、①②③④
B、②①④③
C、④②③①
D、①④②③
6.某算法的流程图如下,当输入a和b的值分别为3、6时,该算法的输出结果为(
)
A、3
B、6
C、8
D、9(共16张PPT)
The
basic
knowledge
of
algorithm
我是河
01
|
考考你的智力
农夫过河。一个农夫带着一只狼,一只羊和一些菜过河。河边只有一条船,由于船太小,只能装下农夫和他的一样东西。
在无人看管的情况下,狼要吃羊,羊要吃菜,请问农夫如何才能使三样东西平安过河。请写出解决这个问题的步骤。
01
|
牧羊人过河问题
1、农夫带羊过河
2、农夫回来
3、农夫带狼过河
4、农夫带羊回来
5、农夫带菜过河
6、农夫回来
7、农夫带羊过河
1、农夫带羊过河
2、农夫回来
3、农夫带菜过河
4、农夫带羊回来
5、农夫带狼过河
6、农夫回来
7、农夫带羊过河
算法
02
|
什么是算法
算法:解决问题的方法和步骤
乐谱
广播体操图谱
武功秘籍
导航图
03
|
算法的特征
1、有穷性
2、明确性
3、可行性
4、有0个以上输入
5、有1个以上输出
1、不能用算法描述“输出所有的偶数”,是因为不符合算法特征中的(
)
A、有穷性
B、明确性
C、有输出
D、可行性
2、下列关于算法的描述,错误的是(
)
A、算法可以说是解决问题的方法和步骤
B、算法是解决问题的精确描述
C、算法的特征有:有限个步骤完成、明确性、可行性
D、处理某个问题的算法往往具有唯一性
04
|
回顾练习
A
D
05
|
算法的表示形式
①自然语言
②流程图
③计算机语言
计算机无法识别自然语言和流程图描述的算法,只有通过计算机语言将算法编成程序。
程序:一系列计算机指令的有序集合。
计算机语言:
Basic
Pascal
C
C++
Visual
Basic
Java
05
|
算法的表示形式
例:设计一个算法,对任意输入的3个整数x、y、z,找出并输出其中的最大值max。
1、输入变量x、y、z的值
2、比较x和y,如果x>y,则将x的值赋给max;否则,将y的值赋给max
3、比较z和max,如果z>max,则将z的值赋给max
4、输出结果max
自然语言
开始
输入变量x、y、z的值
x>y?
max←x
max←y
z>max?
max←z
输出变量max的值
结束
Y
N
N
Y
开始、结束框
输入、输出框
判断框
处理框
连接框
流程线
流程图
05
|
算法的表示形式
Dim
x
As
Integer
Dim
y
As
Integer
Dim
z
As
Integer
Dim
max
As
Integer
x=Val(Text1.Text)
y=Val(Text2.Text)
z=Val(Text3.Text)
max=0
If
x>y
Then
max=x
Else
max=y
If
z>max
Then
max=z
Text4.text=Str(max)
计算机语言
06
|
回顾练习
习题:用自然语言和流程图分别描述判断一个数是否为正数的算法。
说明:即输入一个数a,判断它是否为正数,并输出yes或no。
06
|
回顾练习
1、输入变量a的值
2、判断a是否大于0,如果a>0,则输出yes;否则,输出no
开始
输入变量a的值
a>0?
输出yes
结束
Y
N
自然语言
输出no
流程图
06
|
回顾练习
1、下列叙述正确的是(
)
A、采用自然语言描述算法最为直观形象
B、可以用流程图来表示一个解决一个问题的算法实现
C、算法只能用编程代码的方式来实现
D、采用流程图描述算法更为通俗易懂,但容易产生二义性
2、下列问题不能用算法描述的是(
)
A、已知a、b、c的值,求一元二次方程ax2+bx+c=0(a≠0)的实数根
B、计算某个班级语文成绩的平均分
C、列出方程y=2x+1的所有实数解
D、根据圆的半径求圆的面积和周长
B
C
06
|
回顾练习
3、“剥花生”问题的算法描述如下:
①检查袋中是否还有花生;
②若有,将花生剥壳,将花生放入碗中,将壳放入垃圾桶并返回①;
③若无,则算法结束;
则,该算法的表示形式为(
)
A、流程图
B、自然语言
C、计算机语言
D、代码
4、求两个数x、y中的较小数的算法有如下步骤,其正确顺序为(
)
①用公式计算较小数min=(x+y-|x-y|)/2
②输入两个数x、y
③结束
④输出变量min
A、①②③④
B、②①④③
C、④②③①
D、①④②③
B
B
06
|
回顾练习
5、某算法的流程图如下,当输入a和b的值分别为3、6时,该算法的输出结果为(
)
A、3
B、6
C、8
D、9
开始
输入a、b的值
c←a+5
c≥b?
输出c
结束
输出b
Y
N
C
本课小结
算法的概念
算法的描述
算法的流程图表示
谢谢大家