《算法初步实验课教案.doc》由会员分享,可在线阅读,更多相关《算法初步实验课教案.doc(8页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、算法初步实验课教案第一课时课题:算法的意义教学目标:1 让学生了解算法的意义,能根据已于有的经验认识算法。2 通过对一元一次方程组的解法理解算法的含义,会说明生活中的一些问题的算法。教学重点与难点:本节的重点是算法的意义,难点是对算法特点的理解。教学方法:讲解、讨论式教学过程:、引入 1.绪言 21世纪是数字时代与信息的时代,信息技术的基础是计算机,而计算机的重要基础又是算法,算法是数学的重要的组成部分,因而将算法放进中学的课程来学习是时代对数学的呼唤,是数学教育改革的充满挑战、充满活力的新内容,它将给我们学习数学、应用数学开辟全新广阔的新天地。 下面我们就学习算法初步的知识。在这些学习中我们
2、将学习算法的意义,程序框图,算法语句等基础知识,然后将运用他们再研究一些古代经典的算法案例。2 问题引入师:请回答下列的问题:(1)你每天早上从起床开始到学校是如何经过的? 学生:洗漱、整理内务、吃早饭、乘车(骑车或步行)到学校。(2)你是怎样用字典查生字的? 学生:查部首、查偏旁、查页码、看字意。(3)如何求(3)(7)? 学生:化为加法,定符号,绝对值相减。(4)解一元一次方程的一般步骤有哪些? 学生:去分母、去括号、移项、合并同类项、方程两边同除以未知数的系数。让学生逐题发言、交流。3 初步形成算法概念的一般认识 教师:从以上的问题中总结他们的共同特征,得出概念。什么是算法呢?一般地,我
3、们把进行某一工作的方法和步骤称为算法。进一步指出:数学里,我们研究计算机来解决问题的程序或步骤,即可用计算机的程序表示,可在计算机上执行的算法。二、古代问题研究(算法的进一步理解) 1.提出问题 为了更好地理解算法的意义,我们研究一个古代数学著作(孙子算经)中的问题。 (展示问题): 鸡 兔 同 笼 今有雉兔同笼,上有三十五头, 下有九十四足,问雉兔各几何?师:我们考虑它的不同的算法,并注意它们之间的相互关联。 算术方法: 若没有兔子,共有35只鸡,应有35270只鸡,而多了947024只脚应该是兔子的,每只兔子增加2只脚。故该有 (9470)212 只兔子, 351223 只鸡。 代数方法:
4、 设鸡x只、兔y只,依题意有: x+y 35 (1) 2x+4y = 94 (2) 由(1)得: x=35-y (3) 代入(2)得: (42)y=94-70 所以 y=(94-70)212 将y=12代入(3)得 x=35-12=23 所以 x=23, y=12 即得,鸡23只,兔12只。2. 抽象推广 对比算术方法与代数方法(如步骤 )我们可以看到它们解法之间的一致性,它包含了解一元一次方程的一般解法(自然语言)。一般地,用消元法解二元一次方程: a1x+b1y=c1 a2x+b2y=c2 二元一次方程组(两个二元一次方程)解出x=y的式子(3)(或y=x的式子)消出x(y),求出y(x)
5、将y(x)代入(3)式, 求出x (y) 答案(写出解) 的解法是; 第一步 由方程化出一个未知数用另一个未知数表示的式子; 第二步 将代入方程消去一个未知数,解出另一个未知数的值; 第三步 将所解出的值代入,求出第二个未知数的值; 第四步 写出方程的解。以上是解一元一次方程算法的自然语言的表示,它也可以用框图形式表示;解一元一次方程的算法程序框图(框图语言)如右图:三、学生练习、巩固理解让学生通过问题练习进一步理解算法的意义 。练习问题1 .说出解不等式3x-75 的算法。2 .说出求一个数的绝对值的算法。3. 说出求给定的一个正整数n的所有的因数的一种算法。4. 说出解一元二次方程ax2+
6、bx+c=0的算法。学生思考,发言、交流。四、知识小结师;我们把以上的学习内容总结如下: 算法的意义一般地,我们把进行某一工作的方法和步骤称为算法。数学里,我们研究的算法是用计算机来解决问题的程序或步骤,即用计算机的程序表示,可在计算机上执行的算法。算法的特点是: 明确、有效、有限 。第二课时课题:程序框图、顺序结构教学目标:1.让学生了解程序框图的意义,会识别基本的框图符号; 2.了解算法的最基本逻辑结构,掌握算法的顺序结构。重点与难点:算法的顺序结构,难点是用框图表示算法。教学过程:一、问题引入师:我们在上节学习了算法的意义,知道什么是算法,我们数学里着重研究什么样的算法问题,如何表示算法
7、?算法的基本结构有哪些?这是我们进一步学习的问题。1,提出问题一对士兵有n个人要过河,岸边只有一只小船,两个小孩,士兵和小孩会划船,但小船一次只能乘一个士兵或两个小孩,请你设计一种算法,让这n个的士兵都过河到河对岸。 2学生活动学生思考、交流,发言。教师引导学生明确其中的步骤,特别是启发它们顺序结构、循环的过程与条件的认识。然后再展示算法。3.算法的表示 表示方式1(自然语言): S1:两个小孩过河;两个小孩过河两个小孩过河一个小孩划回一名士兵过河另一个小孩划回结束开始输入士兵数n有士兵是否S2:一个小孩上岸,另一个小孩划船回原岸:S3:一个士兵划船过河到对岸;S4:小孩划船回到原岸;S5:
8、如果还有士兵,继续s1-s4的步骤;如果没有士兵,结束。表示方式2(框图语言): 4. 算法的表示 师:通过上面的问题的算法我们认识到,表示算法的方法有:自然语言、框图语言与程序语言(让计算机执行)的三种不同的方式。其中框图语言是介于自然语言与计算机语言的桥梁,我们应该掌握它的形式与结构。二、 程序框图1.什么是程序框图 程序框图又称流程图,是一种用规定的图形、指向线及文字说明来表示算法的图形框图的常用符号图形符号名称符号表示的意义起,止框流程图的开始或结束输入,输出框数据的输入或结果的输出处理框(执行框)赋值,计算,结果的传送判断框根据给定条件判断流程线流程线进行的方向 2.算法的基本逻辑结
9、构 师:通过对算法的结构的总结与分析,我们可以得出任何一种算法都可以用顺序结构。条件结构与顺序结构表示,因此它们是算法的三种基本逻辑结构。 即算法基本结构是:顺序结构、条件结构、循环结构。三、顺序结构的学习1.顺序结构顺序结构是算法的操作顺序是按照书写顺序执行的,这是任何一个算法必有的基本结构,是最简单的算法结构。 2. 例题例1 写出求方程ax+b=c(0,a、b、c为常数)的算法及程序框图 开 始输入a,b,c移 项计算c-b方程两边同除以a得x=(c-b)/a结 束输出x的值解: 它的算法是: S1:输入a,b,c; S2:将常数b移到方程右边; S3:计算c-b; S4:方程两边同除以
10、a,得x=(c-b)/a; S5:输出x的值。 用程序框图表示是:开 始输入x0 ,y0 A,B,C计算;Z2 A2+B 2 结束输出d计算 z1=Ax0+By 0+C计算d= 例2 已知点P(x0,y0)和直线l:AX+By+c0,说出求点P到直线l的距离的算法。算法: S1:输入点标x0,y0,, 直线l的系数:A,B,C; S2:计算z1=Ax 0+by 0+c; S3:计算 z2 =A 2+B2; S4:计算d; S5:输出d的值。 算法的程序框图是:(如右图)。3. 练习与操作(1) 说出画已知两点的线段的中垂线的顺序结构的算法() 已知梯形的面积S=( a+b) h,写出求a=2,b=5,h=4时面积的顺序结构算法的框图.() 写出求一元二次方程2x2+5x-3=0的算法程序框图 学生操作活动,练习交流。四,知识小结 算法的意义:解决某一工作的方法和步骤叫算法。 (特点:明确、有效、有限。) 算法 程序框图:(顺序结构、条件结构、循环结构)算法的基本思想就是程序化的解决问题的思想,算法是数学的重要内容之一,它是计算机科学的基础。结束语:谢谢同学们的积极参与,感谢老师们的指导。再见!