第一篇:《1.1.1算法的概念》教案
1.1.1 算法的概念(第1课时)
【课程标准】通过对解决具体问题过程与步骤的分析(如二元一次方程
组求解等问题),体会算法的思想,了解算法的含义.【教学目标】1.理解算法的概念与特点;
2.学会用自然语言描述算法,体会算法思想; 3.培养学生逻辑思维能力与表达能力.【教学重点】算法概念以及用自然语言描述算法
【教学难点】用自然语言描述算法
【教学过程】
一、游戏引入
1.汉诺塔游戏;(详见课件演示)2.鸡兔同笼问题。
鸡兔同笼问题:鸡和兔共有若干只,数腿共有94条,数头共35只,请问各有鸡兔多少只?能不能说出解决这个问题的步骤(过程)!
二、新课探究
a1xb1yc1,1、对于一般的二元一次方程组a2xb2yc2,其中a1b2a2b10,能否找到一个程序化的求解步骤:
2、算法的概念
通过对以上几个问题的分析,我们对算法有了一个初步的了解.在解决某些问题时,需要设计出一系列可操作或可计算的步骤,通过实施这些步骤来解决问题,通常把这些在数学中叫做算法。现代意义上的“算法”通常是指可以用计算机来解决的某一类问题的程序或步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成.三、知识应用
1.说说你在家里烧开水过程的一个算法.第一步:把水注入电锅; 第二步:打开电源把水烧开; 第三步:把烧开的水注入热水瓶.(以上算法是解决某一问题的程序或步骤)2.例1(1)设计一个算法,判断7是否为质数.(2)设计一个算法,判断35是否是质数.3.探究:设计一个算法,判断整数n(n>2)是否为质数.四、课堂练习
1、(课本第5页练习1)任意给定一个正实数,设计一个算法求以这个数为半径的圆的面积.解:第一步:输入任意正实数r 第二步:计算Sr2; 第三步:输出圆的面积S.2、(课本第5页练习2)任意给定一个大于1的正整数n,设计一个算法求出n的所有因数.解:根据因数的定义,可设计出下面的一个算法: 第一步:输入大于1的正整数n.第二步:判断n是否等于2,若n2,则n的因数为1,n;若n2,则执行第三步.第三步:依次从2到n1检验是不是整除n,若整除n,则是n的因数;若不整除n,则不是n的因数.五、课堂小结 1.算法的特性:
①有限性:一个算法的步骤序列是有限的,它应在有限步操作之后停止,而不能是无限的.②确定性:算法中的每一步应该是确定的并且能有效地执行且得到确定的结果,而不应当是模棱两可.③可行性:算法中的每一步操作都必须是可执行的,也就是说算法中的每一步都能通过手工和机器在有限时间内完成.2.描述算法的一般步骤:
①输入数据.②数据处理.③输出结果.六、作业
1、求1×3 × 5 × 7 × 9 × 11的值,写出其算法。
2、写出解不等式 x22x30的一个算法。
七、课后反思:
第二篇:§1.1.1 算法的概念教案
§1.1.1 算法的概念
【教学目标】:
(1)了解算法的含义,体会算法的思想。(2)能够用自然语言叙述算法。(3)掌握正确的算法应满足的要求。
【过程与方法】:通过求解二元一次方程组,体会解方程的一般性步骤,从而得到一个解二元一次方程组的步骤,这些步骤就是算法,不同的问题有不同的算法。由于思考问题的角度不同,同一个问题也可能有多个算法,能模仿求解二元一次方程组的步骤,写出一个求一个一元二次方程解的算法。
【情感态度与价值观】:通过本节的学习,使我们对计算机的算法语言有一个基本的了解,明确算法的要求,认识到计算机是人类征服自然的一各有力工具,进一步提高探索、认识世界的能力。
【教学重点】算法的含义和判断一个数为质数的算法设计。.【教学难点】把自然语言转化为算法语言。.【教法】:采用“问题探究与学案相结合”教学法,以多媒体为辅助手段,让学生主动发现问题、分析问题、解决问题,培养学生的探究论证、逻辑思维能力。
【教学过程】
一、本章章头图说明
章头图为我们展示的是古代与近代的计算工具:算筹与算盘.以及20世纪最伟大的发明——计算机,体现了中国古代数学与现代计算机科学的联系,它们的基础都是“算法”。计算机是强大的实现各种算法的工具。那么,计算机是怎样工作的呢?算法的学习是一个开始。
二、引入新课
1、怎样理解算法?
x2y1引例1:解二元一次方程组:
2xy1① ②分析:解二元一次方程组的主要思想是消元的思想,有代入消元和加减消元两种消元的方法,下面用加减消元法写出它的求解过程.解:第一步:②①×a2,得:a1b2a2b1ya1c2a2c③
第二步:解③得 ya1c2a2c1;
a1b2a2b1
第三步:将ya1c2a2c1bcb1c2代入①,得x21
a1b2a2b1a1b2a2b1评注:1.以上求解的步骤就是解二元一次方程组的算法.2本题的算法是由加减消元法求解的,同样利用代入消元也可达到解方程组的目的,解决一个问题不一定只有一种算法
算法概念: 算法通常是指可以用计算机来解决的某一类问题的程序或步骤,这些程序或步骤必须是明确的和有效的,而且能够在有限步之内完成。
例如:描述太极拳动作的图解,就是“太极拳的算法”;一首歌的乐谱,可以称之为该歌曲的算法。从小学到高中遇到的算法绝大多数都与“计算”有关的问题。
2.算法的特点: ①有穷性:一个算法的步骤序列是有限的,它应在有限步操作之后停止,而不能是无限地执行下去。
②确定性:算法中的每一步应该是确定的并且能有效地执行且得到确定的结果,而不应当是模棱两可的。
③逻辑性:算法从初始步骤开始,分为若干个明确的步骤,前一步是后一步的前提,只有执行完前一步才能进行下一步,并且每一步都准确无误,才能完成问题。
④不唯一性:求解某一个问题的算法不一定只有唯一的一个,可以有不同的算法。⑤普遍性:很多具体的问题,都可以设计合理的算法去解决。
2、例题讲评:
例
1、设计算法判断任意一个大于2的正整数n是否是质数。
分析:首先考虑判断一个具体的数是否是质数的方法,以7为例。
根据质数的定义,可以这样判断:依次用2~6去除7如果它们中有一个数能整除7,则7不是质数,否则7是质数。
第一步 用2除7,得到余数1,所以2不能整除7
第二步 用3除7,得到余数1,所以3不能整除7
第三步 用4除7,得到余数3,所以4不能整除7
第四步 用5除7,得到余数2,所以5不能整除7
第五步 用6除7,得到余数1,所以6不能整除7,因此,7是质数。
根据以上分析,对于任意大于2的正整数n,判断它是否为质数的算法如下:
第一步:给出大于2的正整数
第二步:令i=2
第三步:用i 除n,得到余数r
第四步: 判断“r=0”是否成立。若是则n 不是质数,结束算法;否则将 i 的值增加1,仍用 i表示
第五步:判断
“i >(n-1)” 是否成立。若是,则n是质数,结束算法;否则,返回第三步。
(设计意图:通过这个例子从特殊到一般的过程,使学生进一步体会到算法概括性,逻辑性,有限性,练习把自然语言转化成规范的算法语言)
例
2、.用二分法设计一个求方程x220的近似根的算法.分析:该算法实质是求2的近似值的一个最基本的方法.解:设精确度为d,初始区间【a,b】且fafb0
2fxx2;
第二步:令m=(a+b)/2 算法:第一步:令
第三步:若fafm0,则b=m;否则,令a=m.第四步:判断|a-b| 三、小结 1、算法概念和算法的基本思想 (1)算法与一般意义上具体问题的解法的联系与区别;(2)算法的五个特征。 2、两类算法问题 (1)数值性计算问题,如:解方程(或方程组),解不等式(或不等式组),套用公式判断性的问题,累加,累乘等一类问题的算法描述,可通过相应的数学模型借助一般数学计算方法,分解成清晰的步骤,使之条理化即可。 (2)非数值性计算问题,如:排序、查找、变量变换、文字处理等需先建立过程模型,通过模型进行算法设计与描述。 四、作业: 完成学案作业 六 五、板书设计 1.1.1 算法的概念 一问题1 二 概念 例2 问题2 三例1 小结 课程:教研室:教师: 教学对象 班级人数 首次授课时间 课程类型 课题序号 授课课时 教学内容(课题) 12.1算法的概念 教学目标 认知 情感、态度、价值观 运用 通过具体实例,了解算 法基本概念;体会算法 的基本思想。了解变 量、赋值等概念。掌握 算法的特征。引导学生端正学习态度,体会算法的程序化思想,感受学习算法的必要性。通过算法学习,感受到数学就在我们的身边,生活中的许多问题可以用数学的方法来解决。 能够运用所学的有关算法的相关内容,解决现实生活中的实际问题。 教学重点 算法的概念 教学难点 通过实例了解算法的基本思想 教学方法 教法:案例导入法、案例分析法、提问法、讲授法、练习法 学法:合作法、探究法、发现法、预习法 教学资源 教材、教师参考用书、学习指导用书、网络相关资源 黑板、粉笔、多媒体 板书设计 算法的概念:解决问题清晰的指令 例 1、例2 变量和赋值 (1)变量:在解决问题的过程中,可以取不同数值的量叫做变量。赋值:在设计算法和程序时,引入变量并且对它进行适当的赋值。例 3、例4 有穷性、可行性、确切性、算法的基本特征 数据输入和信息输出不唯一性 例5 课堂教学安排 教学环节与主要内容 学生活动 教师活动 设计意图 课前准备 学生用10分钟左右的时间进行预习,并完成指导用书中的空白部分 准备好教案和多媒体所用PPT和教案 为上好一堂课做好充分准备 点名 作业讲评(复习旧知) m 把已做好并批改好的教材章节复习题准备好 针对学生出错率较高的题目进行讲解,并要求学生做好订正 复习巩固旧知识 一、导入(创境激趣) min 小李想用银行卡从自动取款机上取500元钱,由于他第一次用银行卡取钱,所以向你求助,你能写出用银行卡取钱的具体步骤,帮助他顺利取出钱吗? 引导学生思考: 第一步插入银行卡; 第二步输入取款密码; 第三步输入取款金额; 第四步从出钞口取走钱; 第五步取回银行口; 让学生在案例当中逐步体会什么是算法 二、新课讲授(引思明理) min (一)算法的概念 结合教材学习算法的概念: 算法是指用来解决问题的一系列明确而有效的步骤,是解决问题清晰的指令。即能够对一定规范的输入,在有限的时间内获得所要求的答案。 适时指出设计算法的要求: 写出的算法必须能够解决某一类问题; 要使算法尽量的简单,步骤尽量少; 要保证算法正确,且计算能够执行。 让学生更深入地去理解到底什么是算法 (二)变量和赋值 (1)变量:在解决问题的过程中,可以取不同数值的量叫做变量。(2)赋值:在设计算法和程序时,引入变量并且对它进行适当的赋值。 给变量赋值的一般格式为:变量名=表达式 其中的符号“=”就是赋值号。它的意义是将后面的表达式的值赋给变量,也就是将表达式的值存储到这个变量缩所对应的存储单元中。 让学生接受新的知识,培养其接受能力;同时对新的知识点进行深入讲解,帮助学生消化吸收新知识。 (三)算法的基本特征 有穷性、可行性、确切性、数据输入和信息输出不唯一性 描述算法的一般步骤: 第一步:输入数据(若数据已知时,应用赋值;若数据为任意未知时,应用输入)第二步:数据处理; 第三步:输出结果 培养学生的自学能力,同时培养学生自主学习的好习惯 三、体验导行(习题训练/任务训练/角色体验等) (一)min 根据算法的概念,自学例1: 例1:设计一个算法,求出1+2+3+4+5„„+10的值。 解:算法为: 第一步计算1+2,得出结果3; 第二步计算3+3,得出结果6; 第三步计算6+4,得出结果10; 第四步计算10+5,得出结果15;„„ 第九步计算45+10,得出结果55。所以:1+2+3+„„+10=55 巩固练习新知识点的应用 (二)根据对变量和赋值的学习,自学例2:请仔细阅读下面的算法: 第一步A=1 ,B=2 , C=3;第二步A=A+B;第三步A=A+B+C 第四步输出A, B, C 问:最后输出的A,B,C的值各为多少? 答:最后输出的值分别为8,2,3。同时指出:变量可以赋不同的值,但每个变量每次只能赋一个值,当变量赋新值时,原值将被新值所代替,当算法结束时,变量的值就是最后一次所赋的值。若没给变量赋新值,即使这个变量参与运算和操作,该变量的值仍不变。 通过对例题的自学和讲解,巩固新知识 (三)根据所学算法的特征,自学: 例5:设计一个算法,从输出的5个数中找出最大值。 解:算法为: 第一步输出5个数a1、a2、a3、a4、a5。第二步 第三步比较,如果则; 如果则M不变。 第四步比较,如果则; 如果则M不变。 第五步比较,如果则; 如果则M不变。 第六步比较,如果则; 如果则M不变。第七步输出 M 通过对例题的自学和讲解,巩固新知识 四、小结提升(课堂小结 min 请学生回顾本次课所学的知识点,并讲述自己的收获。 重述本次课的知识点、总结关键点、并再次点拨本次课解题的关键和技巧 强化对知识点的掌握 五、布置作业 min 12.1 练习册 讲解作业的要求,并对个别有难度的题目做出提示。 及时而有针对性的布置作业,巩固所学知识 教学设计 说明 本节算法对学生来说并不陌生.生活中很多问题是按照指定的要求一步步解决的.初中学习的列方程解应用题的步骤、求二元一次方程组的解的过程等,都是算法的典型体现.但是算法并不是容易理解和掌握的内容.为了帮助学生更好地学习,首先通过实际生活中的例子和复习回顾二元一次方程组的求解过程,自然展示求解的“步骤”,从而帮助学生建立算法的概念.在建立了算法的概念以后,通过从算法的角度介绍学生熟悉的例子,帮助学生进一步领会算法的思想。接着通过例1和例2设计算法,帮助学生进一步理解算法.这里要注意:重点是通过设计帮助学生领会算法概念,而不在于算法所涉及问题的本身.教学时可以先让学生回顾问题的解题过程,再让他们整理出步骤,并有条理的用自然语言表达出来.通过这样的教学使学生体会算法设计的基本思路.本节课教学,要围绕算法概念,立足于用自然语言描述解决问题过程中的明确顺序.根据这节课的教学内容、教学目标,结合以上分析,本节课建议采用以教师引导分析帮助学生建立算法概念,着重一个“导”字,并通过适量的练习加以巩固.教学反思 算法的概念(教案) 数学与统计学学院 2009211955 安琪 0905班 一、本节内容分析 算法的概念这一节在高中数学必修三人教A版第一章第一节1.1.1。“算法”这个概念对于学生而言可能是陌生的,但在人教A版数学必修一、二课后补充和提高中都有提到,所以教师在讲授过程中应注意和前面的知识或应用联系。 算法是数学及其应用的重要组成部分,是计算科学的重要基础。随着现代信息技术飞速发展,算法在科学技术、社会发展中发挥着越来越大的作用,并日益融入社会生活的许多方面,算法思想已经成为现代人应具备的一种数学素养。需要特别指出的是,中国古代数学中蕴涵了丰富的算法思想。 二、学习目标 知识与技能 1、体会算法思想; 2、了解算法的含义; 3、理解算法的性质; 过程与方法 1、通过算分概念和例题分析,能够独立使用算法语言描述解决具体问题的算法; 2、通过例题分析和比较步骤,能够发现具体问题的过程或步骤中的相同点,总结出算法的性质; 3、通过实例自我感悟,理解算法在现实生活中的作用。情感,态度与价值观 1、意识到思维的明辨性,思维的逻辑正确性和严谨性; 2、正确看待数学中一类问题的解法,学会将问题归类。 三、学习者分析 “算法”对于高中生是一个陌生又熟悉的概念,在必修一用二分法求解方程课后阅读中,算法的程序框图稍有介绍。学生思维灵活,同时善用巧法,但是也容易 通过常规常识从而自然地判断一些简单问题,对于算法这种判断显然不可取。 四、教学重点 本节内容要求教师引导学生理解算法的概念以及算法的性质,学生学会正确写出算法分析。 五、教学难点 突破常规想象解决数学问题,找到解决一类题的普遍做法,并将过程记录下来形成算法,为以后写程序做铺垫。 六、教学用具 多媒体PPT,高中数学人教A版必修三 七、课时安排 一个课时 八、教学过程 【兴趣引入】同学们好,从今天开始我们将步入数学必修三的学习。首先请同学们看看大屏幕上的三幅图,有哪位同学可以告诉我,这三幅图中的物品分别是什么?(PPT中播放三幅图片分别是图一算筹,图二算盘,图三计算机) 学生1:第一幅...不认识,第二幅是算盘,第三幅是计算机。 好,请坐。他对于后两幅图回答的很正确,第一幅图呢,同学们可能不是很认识,它是算筹。这三幅图所表示的内容都是数学计算工具。由于时代的久远,算筹已经被彻底摒弃,而算盘也只有极少数偏远地区在使用。计算机是当今社会使用最普遍的工具,那么究竟如何使用计算机解决数学问题呢?今天我们就一起学习计算机解决数学问题的基础内容——算法。 (板书)第一章算法的初步第一节算法与程序框图1.1.1算法的概念 【知新探索】同学们可以通过题目发现我们本章的一个新名词是什么? 学生齐答:算法 没错,那么算法的定义是什么?怎样写算法分析?算法的特征又是什么呢?现在我们就来逐一的解决这些问题。 在以前我们就学习过如何解决二元一次方程组,有哪位同学可以告诉我解决二元一次方程组的步骤呢?(PPT上显示一般二元一次方程组) 学生2:我们通常使用加减消元法和代入消元法解题 很好,那你就和大家说说用加减消元法解二元一次方程组的步骤吧。学生2:首先,我们将 y的系数化为相同,然后通过两个方程的加减消去y,再按照解一元一次方程的方法解出式子中解出 x,最后把求得的x代入原方程组中的一个y即可。 大家觉得对不对? 学生齐答:对 请坐。我们一起看看PPT上的步骤,和刚才同学说的一样。这其实就是解决一般二元一次方程组的算法。现在再请一位同学看着大屏幕为大家读一读算法的定义。 学生3:算法是指可以用计算机来解决的某一类问题的程序或步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成。 了解算法的定义以及结合二元一次方程组的算法分析,同学们可以看出算法实质就是将我们解题的步骤一一记录下来。那么,我们来看几道例题。(教师边诱导学生回答问题思考,边播放PPT) 【例一】任意给定一个大于1的整数n,试设计一个程序或步骤对n是否为质数做出判断。(PPT播放题目) 在写算法之前,同学们回顾一下什么是质数? 学生4:只能被1和自身整除大于1的整数是质数。 正确,那你可不可以判断一下7,13,101,667这些数是不是质数? 学生4:7是质数,13是质数,101好像是质数,667也好像是质数。那你是怎么判断的呢? 学生4:根据定义看除了1和本身之外有没有其他约数。 请坐。刚刚这位同学就是检验从2~(n-1)中有没有n的因数来判断一个数是不是质数,这也是我们通常判断质数的方法。但是,刚才他回答的问题中有两个数有些犹豫,不是很确定,那么我们通过计算可知101是质数,而667=2329,所以667不是质数。我们在判断667时就已经感到人工计算的复杂了,这时我们就借助计算机解决这类为题。 那么我们一起把刚刚这位同学的想法写下来。(板书)依次判断2~(n-1)中有无n的因数。若有这样的数,则n不是质数;若没有这样的数,则n是质数。 同学们现在看一看老师的算法分析有没有什么问题?这样写可以判断出任意的数是否为质数嘛? 同学5:这样判断,丢了一个质数2,要填上才行。 这位同学观察的很仔细,好,既然丢了一个2,那我们就补上。一起看大屏幕,这道题的算法经过同学们的补充完整就是这样。 【例二】写出求一列有限整数列中最大值的算法 同学们,我们通常如何选出一列数中的最大值呢? 学生6:先选两个数比较,选出最大的,然后用最大的和其他的数进行比较,要是最大的数还是最大,就继续比较,如果另外一个数大,就把另外一个作为最大数,进行和剩下的数比较,知道没有可以比较的。剩下的数就是最大数。 好,这位同学已经基本将算法分析说了出来,不知道其他同学有没有明白,现在我们一起看一下大屏幕。 不知道同学们还记不记得在数学必修一的函数二分法判断零点书后补充中有算法的内容,不记得也没关系,我们一起来看一看下面一题 【例三】用二分法设计一个求方程x2-2=0的近似根的算法.那同学们还记不记得二分法了呢? 学生7:对于在区间[a,b]上连续不断,且f(a)﹒f(b)< 0的函数y=f(x),通过不断把函数f(x)的零点所在的区间一分为二,使区间的两个端点逐步逼近零点,进而得到零点近似值的方法叫做二分法。 很好,请坐。那么大家现在想想这道题应该怎么写呢?第一步应该怎么做? 学生8:令f(x)=x2-2.因为f(1)<0,f(2)>0,所以设a=1,b=2.恩,满足f(a)﹒f(b)< 0,那么就要将区间一分为二,对吧?接下来呢? 学生8:令 mab,2 判断f(m)是否为0.若是,则m为所求;若否,则继续判断f(a)(m)大于0还是小于0 好,进行这一步的判断,我们是要选择哪一区间进行二分,然后呢? 学生8:若f(a)(m)>0,则令a=m;否则,令b=m.那计算机应该到什么位置停止呢?是不是应该给它一个终止的信号? 学生8:因为有一个近似值ε,所以判断|a-b|<ε是否成立?若是,则a或b为满足条件的近似根;若否,则返回第二步.不错,回答得很好。同学们为他鼓鼓掌。 刚才我们知道了算法的定义,又分析了几道例题,也初步掌握应该如何描述算法,在课前提的三个要解决的问题,还有一个就是算法的特征,只有知道了算法的特征,我们才能检验自己写的究竟是不是算法分析。 首先,先回到算法的概念中,同学们看我用红笔表示出的步骤,第一个特征就是普适性,因为它要解决一类问题;第二点,请一位同学回答。 学生9:明确性和有效性 一下说出两点,请坐,第四点 学生10:有限性 同学们既然自己总结出了算法的特征,再结合刚才的例题讲解。现在我就要考考大家学以致用如何了。 【学以致用】(三道题让学生先思考在回答教师在学生回答后,若有特殊强调或错误时,加以纠正。) 1、任意给定一个正实数,设计一个算法求以这个数为半径的圆的面积.2、给定三条线段,判定是否可以构成三角形 3、为了加强居民的节水意识,某市制订了以下生活用水收费标准:每户每月用水未超过7m3时,每立方米收费1.0元,并加收0.2元的城市污水处理费;超过7m3的部分,每立方米收费1.5元,并加收0.4元的城市污水处理费,请你写出某户居民每月应交纳的水费y(元)与用水量x(m3)之间的函数关系,然后设计一个求该函数值的算法.【小结明晰】在这堂课即将结束的时候,同学们情回顾一下,我们这堂课学习了什么?同学们一起说,首先......学生们齐答:算法的定义 恩,定义是什么? 学生齐答:算法是指可以用计算机来解决的某一类问题的程序或步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成。 然后呢?我们有学习了如何写算法,一步一步将我们做题思路写下。最后,我们一起讨论了算法的特质,同学们还记得吗? 学生齐答:记得,普适性,明确性,有效性和有限性。很好,为了让同学们更加加强本节课的基础,作业是 【加强巩固】作业:书后1.1.1练习2 下课。 1.1.1算法的概念 一、教学目标: 1、知识与技能:(1)了解算法的含义,体会算法的思想。(2)能够用自然语言叙述算法。 (3)掌握正确的算法应满足的要求。(4)会写出解线性方程(组)的算法。(5)会写出一个求有限整数序列中的最大值的算法。(6)会应用Scilab求解方程组。 2、过程与方法:通过求解二元一次方程组,体会解方程的一般性步骤,从而得到一个解二元一次方程组的步骤,这些步骤就是算法,不同的问题有不同的算法。由于思考问题的角度不同,同一个问题也可能有多个算法,能模仿求解二元一次方程组的步骤,写出一个求有限整数序列中的最大值的算法。 3、情感态度与价值观:通过本节的学习,使我们对计算机的算法语言有一个基本的了解,明确算法的要求,认识到计算机是人类征服自然的一各有力工具,进一步提高探索、认识世界的能力。 二、重点与难点: 重点:算法的含义、解二元一次方程组和判断一个数为质数的算法设计。 难点:把自然语言转化为算法语言。 三、学法与教学用具: 学法: 1、写出的算法,必须能解决一类问题(如:判断一个整数n(n>1)是否为质 数;求任意一个方程的近似解;„„),并且能够重复使用。 2、要使算法尽量简单、步骤尽量少。 3、要保证算法正确,且计算机能够执行,如:让计算机计算1×2×3×4×5是可以做到的,但让计算机去执行“倒一杯水”“替我理发”等则是做不到的。 教学用具:电脑,计算器,图形计算器 四、教学设想: 1、创设情境: 算法作为一个名词,在中学教科书中并没有出现过,我们在基础教育阶段还没有接触算法概念。但是我们却从小学就开始接触算法,熟悉许多问题的算法。如,做四则运算要先乘除后加减,从里往外脱括弧,竖式笔算等都是算法,至于乘法口诀、珠算口诀更是算法的具体体现。我们知道解一元二次方程的算法,求解一元一次不等式、一元二次不等式的算法,解线性方程组的算法,求两个数的最大公因数的算法等。因此,算法其实是重要的数学对象。 2、探索研究 算法(algorithm)一词源于算术(algorism),即算术方法,是指一个由已知推求未知的运算过程。后来,人们把它推广到一般,把进行某一工作的方法和步骤称为算法。 广义地说,算法就是做某一件事的步骤或程序。菜谱是做菜肴的算法,洗衣机的使用说明书是操作洗衣机的算法,歌谱是一首歌曲的算法。在数学中,主要研究计算机能实现的算法,即按照某种机械程序步骤一定可以得到结果的解决问题的程序。比如解方程的算法、函数求值的算法、作图的算法,等等。 3、例题分析: 用心爱心专心-1- 例1任意给定一个大于1的整数n,试设计一个程序或步骤对n是否为质数做出判定。 算法分析:根据质数的定义,很容易设计出下面的步骤: 第一步:判断n是否等于2,若n=2,则n是质数;若n>2,则执行第二步。 第二步:依次从2至(n-1)检验是不是n的因数,即整除n的数,若有这样的数,则n不是质数;若没有这样的数,则n是质数。 这是判断一个大于1的整数n是否为质数的最基本算法。 例2用二分法设计一个求议程x–2=0的近似根的算法。 算法分析:回顾二分法解方程的过程,并假设所求近似根与准确解的差的绝对值不超过0.005,则不难设计出以下步骤: 第一步:令f(x)=x–2。因为f(1)<0,f(2)>0,所以设x1=1,x2=2。 第二步:令m=(x1+x2)/2,判断f(m)是否为0,若则,则m为所长;若否,则继续判断f(x1)·f(m)大于0还是小于0。 第三步:若f(x1)·f(m)>0,则令x1=m;否则,令x2=m。 第四步:判断|x1–x2|<0.005是否成立?若是,则x1、x2之间的任意取值均为满足条件的近似根;若否,则返回第二步。 小结:算法具有以下特性:(1)有穷性;(2)确定性;(3)顺序性;(4)不惟一性;(5)普遍性 典例剖析: 1、基本概念题 ① 例3写出解二元一次方程组的算法 ② 解:第一步,②-①×2得5y=3;③第二步,解③得y=3/5; 第三步,将y=3/5代入①,得x=1/5 学生做一做:对于一般的二元一次方程组来说,上述步骤应该怎样进一步完善? 老师评一评:本题的算法是由加减消元法求解的,这个算法也适合一般的二元一次方程组的解法。下面写出求方程组 A1xB1yC10A2xB2yC20 (A1B2B1A20)的解的算法: 第一步:②×A1-①×A2,得(A1B2-A2B1)y+A1C2-A2C1=0;③ 第二步:解③,得y A2C1A2C2A1B2A2B1; 第三步:将y A2C1A2C2A1B2A2B1 代入①,得x B2C1B1C2A1B2A2B1。 此时我们得到了二元一次方程组的求解公式,利用此公司可得到倒2的另一个算法: 第一步:取A1=1,B1=-2,C1=1,A2=2,B2=1,C2=-1; 第二步:计算x B2C1B1C2A1B2A2B1 与y A2C1A2C2A1B2A2B 1第三步:输出运算结果。 可见利用上述算法,更加有利于上机执行与操作。 基础知识应用题 例4 写出一个求有限整数列中的最大值的算法。解:算法如下。 S1先假定序列中的第一个整数为“最大值”。 S2将序列中的下一个整数值与“最大值”比较,如果它大于此“最大值”,这时你就假定“最大值”是这个整数。 S3如果序列中还有其他整数,重复S2。 S4在序列中一直到没有可比的数为止,这时假定的“最大值”就是这个序列中的最大值。 学生做一做写出对任意3个整数a,b,c求出最大值的算法。 老师评一评在例2中我们是用自然语言来描述算法的,下面我们用数学语言来描述本题的算法。 S1max=a S2如果b>max, 则max=b.S3如果C>max, 则max=c.S4max就是a,b,c中的最大值。综合应用题 例5 写出求1+2+3+4+5+6的一个算法。 分析:可以按逐一相加的程序进行,也可以利用公式1+2+„+n=以根据加法运算律简化运算过程。解:算法1: S1:计算1+2得到3; S2:将第一步中的运算结果3与3相加得到6; S3:将第二步中的运算结果6与4相加得到10; S4:将第三步中的运算结果10与5相加得到15; S5:将第四步中的运算结果15与6相加得到21。 n(n1) 进行,也可 算法2: S1:取n=6; S2:计算 n(n1); S3:输出运算结果。算法3: S1:将原式变形为(1+6)+(2+5)+(3+4)=3×7; S2:计算3×7; S3:输出运算结果。 小结:算法1是最原始的方法,最为繁琐,步骤较多,当加数较大时,比如1+2+3+„+10000,再用这种方法是行不通的;算法2与算法3都是比较简单的算法,但比较而言,算法2最为简单,且易于在计算机上执行操作。学生做一做求1×3×5×7×9×11的值,写出其算法。老师评一评算法1;第一步,先求1×3,得到结果3; 第二步,将第一步所得结果3再乘以5,得到结果15; 第三步,再将15乘以7,得到结果105; 第四步,再将105乘以9,得到945; 第五步,再将945乘以11,得到10395,即是最后结果。算法2:用P表示被乘数,i表示乘数。S1使P=1。S2使i=3 S3使P=P×i S4使i=i+2 S5若i≤11,则返回到S3继续执行;否则算法结束。 小结由于计算机动是高速计算的自动机器,实现循环的语句。因此,上述算法2不仅是正确的,而且是在计算机上能够实现的较好的算法。在上面的算法中,S3,S4,S5构成一个完整的循环,这里需要说明的是,每经过一次循环之后,变量P、i的值都发生了变化,并且生循环一次之后都要在步骤S5对i的值进行检验,一旦发现i的值大于11时,立即停止循环,同时输出最后一个P的值,对于循环结构的详细情况,我们将在以后的学习中介绍。 4、课堂小结 本节课主要讲了算法的概念,算法就是解决问题的步骤,平时列论我们做什么事都离不开算法,算法的描述可以用自然语言,也可以用数学语言。 例如,某同学要在下午到体育馆参加比赛,比赛下午2时开始,请写出该同学从家里 发到比赛地的算法。 若用自然语言来描述可写为(1)1:00从家出发到公共汽车站(2)1:10上公共汽车(3)1:40到达体育馆(4)1:45做准备活动。(5)2:00比赛开始。若用数学语言来描述可写为: S11:00从家出发到公共汽车站 S21:10上公共汽车 S31:40到达体育馆 S41:45做准备活动 S52:00比赛开始 大家从中要以看出,实际上两种写法无本质区别,但我们在书写时应尽量用教学语言来描述,它的优越性在以后的学习中我们会体会到。 5、自我评价 1、写出解一元二次方程ax+bx+c=0(a≠0)的一个算法。 2、写出求1至1000的正数中的3倍数的一个算法(打印结果) 6、评价标准 1、解:算法如下 S1计算△=b-4ac S2如果△〈0,则方程无解;否则x1= S3输出计算结果x1,x2或无解信息。 2、解:算法如下: S1使i=1 S2i被3除,得余数r S3如果r=0,则打印i,否则不打印 S4使 S5若i≤1000,则返回到S2继续执行,否则算法结束。 7、作业: 1、写出解不等式x2-2x-3<0的一个算法。解:第一步:x2-2x-3=0的两根是x1=3,x2=-1。第二步:由x2-2x-3<0可知不等式的解集为{x |-1 评注:该题的解法具有一般性,下面给出形如ax2+bx+c>0的不等式的解的步骤(为方便,我们设a>0)如下: 第一步:计算△= b4ac; 第二步:若△>0,示出方程两根x1,2bb4ac(设x1>x2),则不等式解集为 2a {x | x>x1或x 第三步:若△= 0,则不等式解集为{x | x∈R且xb2a }; 第四步:若△<0,则不等式的解集为R。 2、求过P(a1,b1)、Q(a2,b2)两点的直线斜率有如下的算法: 第一步:取x1= a1,y1= b1,x2= a2,y1= b2; 第二步:若x1= x2; 第三步:输出斜率不存在; 第四步:若x1≠x2; 第五步:计算k y2y1x; 2x1 第六步:输出结果。 3、写出求过两点M(-2,-1)、N(2,3)的直线与坐标轴围成面积的一个算法。解:算法:第一步:取x1=-2,y1=-1,x2=2,y2=3; 第二步:计算 yy1; yxx12y1 x2x1 第三步:在第二步结果中令x=0得到y的值m,得直线与y轴交点(0,m);第四步:在第二步结果中令y=0得到x的值n,得直线与x轴交点(n,0);第五步:计算S= 1|2 m||n|; 第六步:输出运算结果第三篇:121算法的概念教案
第四篇:算法的概念(教案)
第五篇:高一数学 1.1.1《算法的概念》教案 新人教版必修3[范文]