算法的概念优质课教学设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课题:算法的概念
教学目标:
[知识目标]
(1)理解算法的概念;
(2)会初步用自然语言描述算法;
(3)能用算法解决数学和生活中的简单问题。
[能力目标]
尝试有条理的思考与表达算法,提高学生的逻辑推理能力;发展从具体问题中提炼算法思想的能力。
[情感目标]
用现实中的实例,激发学生的学习兴趣,培养学生勇于探索,善于发现的创新思想。
重点与难点:
重点:理解算法的概念,用自然语言描叙算法。
难点:对算法的描述,把自然语言转化为算法语言。
教学过程:
一、引入:
情景引入:
请同学们来一起看屏幕上的图片。大家都认识吗?(电脑,计算机)会用吗?(会)都用来干嘛?(听音乐、看电影、玩游戏、聊天、打字……)现在生活水平高了,大家对计算机都很熟悉了。我小的时候对计算机的接触的很少,总以为那是科幻电影里无所不知的智能机器。所以当周围有小朋友炫耀起家里买了计算机以后,我请他帮我向计算机问了一个很幼稚的问题:我长大后能长多高?当然,他的计算机没有回答我的问题。随着年龄的增长和社会的进步,计算机也越来越多的参与到我的生活之中。我也会用它来听音乐、看电影、玩游戏、聊天、打字、处理数据……。那么计算机到底是怎样工作的?我们今天学习的算法就是一个开始。
二、算法的概念:
实际上,算法对我们并不陌生。
来请大家解这样一个二元一次方程组。⎩⎨⎧⋯⋯=+⋯⋯-=-②
①1212y x y x ,
第一步:2⨯+②①,得:③⋯⋯=15x ,
第二步:解③,得:5
1=x , 第三步:2-⨯①②,得:④⋯⋯=35y ,
第四步:解④,得:5
3=
y , 第五步:得到方程组的解为⎪⎩
⎪⎨⎧==5351y x 。
我们可以用上述的五个明确的步骤给出这个二元一次方程组的解,那么对于其他的二元一次方程组呢?
探究一:你能写出求解一般的二元一次方程组的步骤吗? 对于一般的二元一次方程组:⎩⎨⎧⋯⋯=+⋯⋯=+⑥
⑤222111c y b x a c y b x a ,
其中01221≠-b a b a ,可以写出类似的求解步骤:
第一步:12b b ⨯-⨯⑥⑤,得:⑦⋯⋯-=-21121221)(c b c b x b a b a ,
第二步:解⑦,得:1
2212112b a b a c b c b x --=,(01221≠-b a b a ) 第三步:21a a ⨯-⨯⑤⑥,得:⑧⋯⋯-=-12211221)(c a c a y b a b a , 第四步:解⑧,得:1
2211221b a b a c a c a y --=,(01221≠-b a b a ) 第五步:得到方程组的解为⎪⎪⎩⎪⎪⎨⎧--=--=1
221122112212112b a b a c a c a y b a b a c b c b x 。 那么上述的五个明确的步骤就构成了解二元一次方程组的一个算法。
实际上,对于某些数学中和生活中的其他问题,我们也能够给出由有限个明确的
步骤构成的算法。
思考:那么,大家能总结出算法的概念吗?
算法的概念:
在数学中,算法通常是指按照一定规则解决某一类问题的明确的和有限的步骤。
三、例题讲解:
我们刚才说过:对于某些数学中和生活中的其他问题,我们也能够给出由有限个明确的步骤构成的算法。下面我们一起来试着用算法解决数学中和生活中的问题吧!
例:(1)设计一个算法,判断7是否为质数?
分析:质数是指只能被1和自身整除的大于1的整数。也就是说,我们可以这样判断:依次用2~6除7,如果它们中有一个能整除7,则7不是质数,否则7是质数。
解:第一步,用2除7,得到余数1,因为余数不为0,所以2不能整除7;
第二步,用3除7,得到余数1,因为余数不为0,所以3不能整除7;
第三步,用4除7,得到余数3,因为余数不为0,所以4不能整除7;
第四步,用5除7,得到余数2,因为余数不为0,所以5不能整除7;
第五步,用6除7,得到余数1,因为余数不为0,所以6不能整除7;因此7是质数。
(2)设计一个算法,判断35是否为质数?
解:第一步,用2除35,得到余数1,因为余数不为0,所以2不能整除35;第二步,用3除35,得到余数2,因为余数不为0,所以3不能整除35;
第三步,用4除35,得到余数3,因为余数不为0,所以4不能整除35;
第四步,用5除35,得到余数0,因为余数为0,所以5能整除35;因此35不是质数。
思考:比较上面的两个算法,有何相同?有何不同?
练习:设计一个算法,判断89是否为质数?
解:第一步,令2
i;
=
第二步,用i除89,得到余数r;
第三步,判断“0
r”是否成立。若是,则89不是质数,结束算法;否则,将
=
i的值增加1,仍用i表示;
第四步,判断“88
i”是否成立。若是,则89是质数,结束算法;否则,返回
>
第二步。
探究二:你能写出“判断整数)2
(>
n是否为质数”的算法吗?
n
解:第一步, 给定大于2的整数n;
第二步,令2
i;
=
第三步,用i除n,得到余数r;
第四步,判断“0
r”是否成立。若是,则n不是质数,结束算法;否则,将i
=
的值增加1,仍用i表示;