秦九韶算法 学习目标 1.了解秦九韶算法的计算过程,并理解利用秦九韶算法可以减少计算次数提 高计算效率的实质 2.掌握数据排序的原理能使用直接排序法与冒泡排序法给一组数据排序,进 而能设计冒泡排序法的程序框图及程序,理解数学算法与计算机算法的区别,理 解计算机对数学的辅助作用。 学习重难点 重点:1.秦九韶算法的特点 2两种排序法的排序步骤及计算机程序设计 难点:1.秦九韶算法的先进性理解 2排序法的计算机程序设计 学法与学习用具 学法:1.探究秦九韶算法对比一般计算方法中计算次数的改变,体会科学的 计算 2.模仿排序法中数字排序的步骤,理解计算机计算的一般步骤,领会数学计 算在计算机上实施的要求。 学习用具:电脑,计算器,图形计算器 学习设想 (一)创设情景,揭示课题 我们已经学过了多项式的计算,下面我们计算一下多项式 f(x)=x3+x4+x3+x2+x+1当x=5时的值,并统计所做的计算的种类及 计算次数。 根据我们的计算统计可以得出我们共需要10次乘法运算,5次加法运算。 我们把多项式变形为:f(x)=x2(1+x(1+x(1+x))+x+1再统计一下计算当 x=5时的值时需要的计算次数,可以得出仅需4次乘法和5次加法运算即可得 出结果。显然少了6次乘法运算。这种算法就叫秦九韶算法。 (二)研探新知
1 / 4 秦九韶算法 学习目标 1.了解秦九韶算法的计算过程,并理解利用秦九韶算法可以减少计算次数提 高计算效率的实质。 2.掌握数据排序的原理能使用直接排序法与冒泡排序法给一组数据排序,进 而能设计冒泡排序法的程序框图及程序,理解数学算法与计算机算法的区别,理 解计算机对数学的辅助作用。 学习重难点 重点:1.秦九韶算法的特点 2.两种排序法的排序步骤及计算机程序设计 难点:1.秦九韶算法的先进性理解 2.排序法的计算机程序设计 学法与学习用具 学法:1.探究秦九韶算法对比一般计算方法中计算次数的改变,体会科学的 计算。 2.模仿排序法中数字排序的步骤,理解计算机计算的一般步骤,领会数学计 算在计算机上实施的要求。 学习用具:电脑,计算器,图形计算器 学习设想 (一)创设情景,揭示课题 我们已经学过了多项式的计算,下面我们计算一下多项式 ( ) 1 5 4 3 2 f x = x + x + x + x + x + 当 x = 5 时的值,并统计所做的计算的种类及 计算次数。 根据我们的计算统计可以得出我们共需要 10 次乘法运算,5 次加法运算。 我们把多项式变形为: ( ) (1 (1 (1 ))) 1 2 f x = x + x + x + x + x + 再统计一下计算当 x = 5 时的值时需要的计算次数,可以得出仅需 4 次乘法和 5 次加法运算即可得 出结果。显然少了 6 次乘法运算。这种算法就叫秦九韶算法。 (二)研探新知
1秦九韶计算多项式的方法 f(x)=anx”+an-1x+an2x"-2+…+a1x+a )x+ +a,x+a =(…(anx+an1)x+an-2)x+…+a1)+a 例1已知一个5次多项式为f(x)=5x3+2x4+3.5x3-26x2+1.7x-0.8 用秦九韶算法求这个多项式当x=5时的值。 解:略 思考:(1)例1计算时需要多少次乘法计算?多少次加法计算? (2)在利用秦九韶算法计算n次多项式当x=x0时需要多少次乘法计算和 多少次加法计算? 练习:利用秦九韶算法计算∫(x)=0.83x3+0.41x4+0.16x3+0.33x2+0.5x+1 当x=5时的值,并统计需要多少次乘法计算和多少次加法计算? 例2设计利用秦九韶算法计算5次多项式 f(x)=a3x3+a4x+a3x3+a2x2+a1x+a0当x=x0时的值的程序框图。 解:程序框图如下:
2 / 4 1.秦九韶计算多项式的方法 1 2 1 0 2 1 0 3 1 2 1 0 3 2 2 1 1 1 0 2 2 1 1 ( (( ) ) ) (( ) ) ( ) ( ) a x a x a x a a a x a x a x a x a a x a x a x a x a f x a x a x a x a x a n n n n n n n n n n n n n n n n n n n = + + + + + = = + + + + + = + + + + + = + + + + + − − − − − − − − − − − − − − 例 1 已知一个 5 次多项式为 ( ) 5 2 3.5 2.6 1.7 0.8 5 4 3 2 f x = x + x + x − x + x − 用秦九韶算法求这个多项式当 x = 5 时的值。 解:略 思考:(1)例 1 计算时需要多少次乘法计算?多少次加法计算? (2)在利用秦九韶算法计算 n 次多项式当 0 x = x 时需要多少次乘法计算和 多少次加法计算? 练习:利用秦九韶算法计算 ( ) 0.83 0.41 0.16 0.33 0.5 1 5 4 3 2 f x = x + x + x + x + x + 当 x = 5 时的值,并统计需要多少次乘法计算和多少次加法计算? 例 2 设计利用秦九韶算法计算 5 次多项式 1 0 2 2 3 3 4 4 5 5 f (x) = a x + a x + a x + a x + a x + a 当 0 x = x 时的值的程序框图。 解:程序框图如下:
开始 输入I(x 输入x0 □v=as v-V Xotas-n 练习:利用程序框图试编写 BASIC程序并在计算机上测试自己的程序。 2排序 在信息技术课中我们学习过电子表格,电子表格对分数的排序非常简单,那 么电子计算机是怎么对数据进行排序的呢? 阅读课本P30P31面的内容回答下面的问题 (1)排序法中的直接插入排序法与冒泡排序法的步骤有什么区别? (2)冒泡法排序中对5个数字进行排序最多需要多少趟 (3)在冒泡法排序对5个数字进行排序的每一趟中需要比较大小几次? 游戏5位同学每人拿一个数字牌在讲台上演示冒泡排序法对5个数据 4117,9,6排序的过程让学生通过观察叙述冒泡排序法的主要步骤并结合步骤解 决例3的问题. 例3用冒泡排序法对数据7,5,3,9,1从小到大进行排序 3/4
3 / 4 开始 输入f(x)的系数: a1,a2,a3,a4,a5 输入x0 n=1 v=a5 n≤5 v=v x0+a5-n n=n+1 输出v 结束 是 否 练习:利用程序框图试编写 BASIC 程序并在计算机上测试自己的程序。 2.排序 在信息技术课中我们学习过电子表格,电子表格对分数的排序非常简单,那 么电子计算机是怎么对数据进行排序的呢? 阅读课本 P30—P31 面的内容,回答下面的问题: (1)排序法中的直接插入排序法与冒泡排序法的步骤有什么区别? (2)冒泡法排序中对 5 个数字进行排序最多需要多少趟? (3)在冒泡法排序对 5 个数字进行排序的每一趟中需要比较大小几次? 游戏:5 位同学每人拿一个数字牌在讲台上演示冒泡排序法对 5 个数据 4,11,7,9,6排序的过程,让学生通过观察叙述冒泡排序法的主要步骤.并结合步骤解 决例 3 的问题. 例 3 用冒泡排序法对数据 7,5,3,9,1 从小到大进行排序
练习:写出用冒泡排序法对5个数据4,1179,6排序的过程中每一趟排序的结 果 例4设计冒泡排序法对5个数据进行排序的程序框图 解:程序框图如下 输入a13a23,a43a5 a1,a2,a3,a4,a5 思考:直接排序法的程序框图如何设计?可否把上述程序框图转化为程序? 练习用直接排序法对例3中的数据从小到大排序 3小结 (1)秦九韶算法计算多项式的值及程序设计 (2)数字排序法中的常见的两种排序法直接插入排序法与冒泡排序法 (3)冒泡法排序的计算机程序框图设计
4 / 4 练习:写出用冒泡排序法对 5 个数据 4,11,7,9,6 排序的过程中每一趟排序的结 果. 例 4 设计冒泡排序法对 5 个数据进行排序的程序框图. 解: 程序框图如下: 开始 输入a1,a2,a3,a4,a5 i=1 ai>ai+1 x=ai ai=ai+1 ai+1=x i=5 r=5 输出 a1,a2,a3,a4,a5 结束 i=i+1 r=r+1 r=1 否 否 是 否 是 是 思考:直接排序法的程序框图如何设计?可否把上述程序框图转化为程序? 练习:用直接排序法对例 3 中的数据从小到大排序 3.小结: (1)秦九韶算法计算多项式的值及程序设计 (2)数字排序法中的常见的两种排序法直接插入排序法与冒泡排序法 (3)冒泡法排序的计算机程序框图设计