——辗转相除法。
例如:设给定的两个正整数为m和n,求它们的最大公约数的步骤为:
(1)以m除以n,令所得的余数为r。
(2)若r=0,则输出结果n,算法结束;否则,继续步骤(3)。
(3)令m=n,n=r,并返回步骤(1)继续进行。
实践1:求两个正整数112和64的最大公约数。
实践2(可选):求两个正整数112和64的最小公倍数。
师生总结算法的特征,教师简要举例说明。
特征:输入、确定性、有穷性、输出、能行性(可行性、有效性)余为48;(2)64
除以48,余为16;
(3)48除以16,
余为0;答案:112
和64的最大公约
数为16。
学有余力的
学生可尝试写出
实践2的算法。
Moodle上提
交。
解算法的特
征。
3、算法的描述。
(1)问:在游戏和辗转相除法中,我们是用什么来描述算法的?
那么还有没有其它方式呢?除了自然语言,还有流程图、伪代码等。
例如辗转相除法用流程图和伪代码描述如下:
①流程图描述的辗转相除法(教师简单说明流程图的基本图形及其功能):
②伪代码描述的辗转相除法(教师简要说明伪代码是用介于自然语言和计算机语言之间的文字和符号来描述算法的工具。
对学生学习不作要求):INPUT m,n
r= m mod n
Do While r≠0
m=n
n=r
r=m mod n
Loop
Print n
(2)讨论交流
比较三种描述算法的方式的优势和不足(伪代码不做要求)。
算法描述方式优势不足
自然语言
流程图
伪代码
学生回答:文
字,……(教师引
导出自然语言)。
各组就求两
个整数的最大公
约数的辗转相除
法的三种描述方
式进行讨论,比较
各自的优势和不
足,填写表格,进
行交流。
Moodle上提
交。
结合辗
转相除法的
不同描述方
式进行讲解,
学生在比较
中体会算法
描述的过程,
掌握本节重
点。
学生通
过对三种方
式的比较,总
结出各自的
优势与不足
之处,进一步
加深对本节
重点知识的
认识。
考虑到
学生的认知
水平,伪代码
不做要求,鼓
励学有余力
的学生了解。
操作实践1、写出求一个数的绝对值的算法。
用自然语言和流程图描述,伪代码不做要求。
2(可选)、写出求解一元二次方程的算法。
要求用流程图描述。
各组成员合
作写出。
考虑到流
程图中各框的画
出需要更多时间,
允许学生在纸上
画出,鼓励学生用
画图工具画出流
程图。
Moodle上提
交。
针对学
生的差异进
行分层训练,
既使学生掌
握基础知识,
又使学有余
力的学生有
所提高。
在操作
实践中对难
点部分有所
突破。
交流评价
针对上一个环节中学生写出的算法进行交流评
价。
1.展示作品评价标准,引导学生参考作品评价
表(附后)进行交流和评价。
2.根据完成任务的实际情况,有代表性地选择
部分学生上台展示作品并自评。
3.引导台下学生开展组间互评。
4.对学生作品中的闪光点和有待改进的地方进
行点评。
本环节采用学生自评、互评、教师点评等多元
化评价方式。
1.根据作品
评价表(附后),
学生展示作品,并
进行自评。
2.欣赏作品,
发表见解。
3.听取教师
点评,取长补短。
给学生
展示自我的
机会,引导学
生在欣赏作
品的同时,取
长补短,共同
进步。
通过评
价,引导学生
自我反思,加
深对所学知
识的认识与
理解。
拓展提高
内容:算法在解决问题中的地位和作用。
1、探究:运行下面两个程序,比较它们的效率,
把观察到的现象填在表中。
(1)用辗转相除法设计的程序:
Private Sub Command1_Click()
m = 9147485
n = 5147480
r = m Mod n
Do While r <> 0
m = n
n = r
r = m Mod n
Loop
学生开展同
一问题的两个不
同算法的程序效
率的比较(填表),
了解算法在问题
解决中的地位和
作用。
在实践、
探究中比较,
了解算法在
问题解决中
的地位和作
用。
评价表:。