1、1.1.1 算法的概念(两个课时)教学目标: (1)了解算法的含义,体会算法的思想。(2)能够用自然语言叙述算法。(3)掌握正确的算法应满足的要求。(4)会写出解线性方程(组)的算法。(5)会写出一个求有限整数序列中的最大值的算法。教学重点: 算法的含义、解二元一次方程组和判断一个数为质数的算法设计。.教学难点: 把自然语言转化为算法语言。.学法:1、写出的算法,必须能解决一类问题(如:判断一个整数n(n1)是否为质数;求任意一个方程的近似解;),并且能够重复使用。2、要使算法尽量简单、步骤尽量少。3、要保证算法正确,且计算机能够执行,如:让计算机计算12345是可以做到的,但让计算机去执行“
2、倒一杯水”“替我理发”等则是做不到的。教学过程一、章头图体现了中国古代数学与现代计算机科学的联系,它们的基础都是“算法”。算法作为一个名词,在中学教科书中并没有出现过,我们在基础教育阶段还没有接触算法概念。但是我们却从小学就开始接触算法,熟悉许多问题的算法。如,做四则运算要先乘除后加减,从里往外脱括弧,竖式笔算等都是算法,至于乘法口诀、珠算口诀更是算法的具体体现。广义地说,算法就是做某一件事的步骤或程序。菜谱是做菜肴的算法,洗衣机的使用说明书是操作洗衣机的算法,歌谱是一首歌曲的算法。在数学中,主要研究计算机能实现的算法,即按照某种机械程序步骤一定可以得到结果的解决问题的程序。(古代的计算工具:
3、算筹与算盘. 20世纪最伟大的发明:计算机,计算机是强大的实现各种算法的工具。)例1:解二元一次方程组: 分析:解二元一次方程组的主要思想是消元的思想,有代入消元和加减消元两种消元的方法,下面用加减消元法写出它的求解过程.解:第一步: - 2,得: 5y=3; 第二步:解得 ; 第三步:将代入,得 .学生探究:对于一般的二元一次方程组来说,上述步骤应该怎样进一步完善?老师评析:本题的算法是由加减消元法求解的,这个算法也适合一般的二元一次方程组的解法。下面写出求方程组的解的算法:例2:写出求方程组的解的算法. 解:第一步:a1 - a2,得: 第二步:解得 ;第三步:将代入,得算法概念:在数学上
4、,现代意义上的“算法”通常是指可以用计算机来解决的某一类问题是程序或步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成.2. 算法的特点:(1)有限性:一个算法的步骤序列是有限的,必须在有限操作之后停止,不能是无限的.(2)确定性:算法中的每一步应该是确定的并且能有效地执行且得到确定的结果,而不应当是模棱两可.(3)顺序性与正确性:算法从初始步骤开始,分为若干明确的步骤,每一个步骤只能有一个确定的后继步骤,前一步是后一步的前提,只有执行完前一步才能进行下一步,并且每一步都准确无误,才能完成问题.(4)不唯一性:求解某一个问题的解法不一定是唯一的,对于一个问题可以有不同的算法.(5
5、)普遍性:很多具体的问题,都可以设计合理的算法去解决,如心算、计算器计算都要经过有限、事先设计好的步骤加以解决.例题讲评:例3、任意给定一个大于1的整数n,试设计一个程序或步骤对n是否为质数做出判断.分析:(1)质数是只能被1和自身整除的大于1的整数.(2)要判断一个大于1的整数n是否为质数,只要根据质数的定义,用比这个整数小的数去除n,如果它只能被1和本身整除,而不能被其它整数整除,则这个数便是质数.解:算法:第一步:判断n是否等于2.若n=2,则n是质数;若n2,则执行第二步.第二步:依次从2(n-1)检验是不是n的因数,即整除n的数.若有这样的数,则n不是质数;若没有这样的数,则n是质数
6、.说明:本算法是用自然语言的形式描述的.设计算法一定要做到以下要求:(1)写出的算法必须能解决一类问题,并且能够重复使用.(2)要使算法尽量简单、步骤尽量少.(3)要保证算法正确,且计算机能够执行. 利用TI-voyage200图形计算器演示:(学生已经被吸引住了)例4、.用二分法设计一个求方程的近似根的算法.分析:该算法实质是求的近似值的一个最基本的方法.解:设所求近似根与精确解的差的绝对值不超过0.005,算法:第一步:令.因为,所以设x1=1,x2=2.第二步:令,判断f(m)是否为0.若是,则m为所求;若否,则继续判断大于0还是小于0.第三步:若,则x1=m;否则,令x2=m.第四步:
7、判断是否成立?若是,则x1、x2之间的任意值均为满足条件的近似根;若否,则返回第二步.练习1:写出解方程x22x30的一个算法。练习2、求1357911的值,写出其算法。练习3、有蓝和黑两个墨水瓶,但现在却错把蓝墨水装在了黑墨水瓶中,黑墨水错装在了蓝墨水瓶中,要求将其互换,请你设计算法解决这一问题。小结1、算法概念和算法的基本思想(1)算法与一般意义上具体问题的解法的联系与区别;(2)算法的五个特征。2、利用算法的思想和方法解决实际问题,能写出一此简单问题的算法3、两类算法问题:(1)数值性计算问题,如:解方程(或方程组),解不等式(或不等式组),套用公式判断性的问题,累加,累乘等一类问题的算
8、法描述,可通过相应的数学模型借助一般数学计算方法,分解成清晰的步骤,使之条理化即可。(2)非数值性计算问题,如:排序、查找、变量变换、文字处理等需先建立过程模型,通过模型进行算法设计与描述。作业: (课本第4页练习)112 程序框图 (三个课时)教学目标:1。掌握程序框图的概念;会用通用的图形符号表示算法,掌握算法的三个基本逻辑结构 2掌握画程序框图的基本规则,能正确画出程序框图。 3通过模仿、操作、探索,经历通过设计程序框图表达解决问题的过程;学会灵活、正确地画程序框图。教学重点:经过模仿、操作、探索,经历通过设计程序框图表达求解问题的过程,重点是程序框图的基本概念、基本图形符号和3种基本逻
9、辑结构教学难点: 难点是能综合运用这些知识正确地画出程序框图。教学过程引入:算法可以用自然语言来描述,但为了使算法的程序或步骤表达得更为直观,我们更经常地用图形方式来表示它。程序框图基本概念:(1)程序构图的概念:程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形。一个程序框图包括以下几部分:表示相应操作的程序框;带箭头的流程线;程序框外必要文字说明。(2)构成程序框的图形符号及其作用程序框名称功能起止框表示一个算法的起始和结束,是任何流程图不可少的。输入、输出框表示一个算法输入和输出的信息,可用在算法中任何需要输入、输出的位置。处理框赋值、计算,算法中处理数
10、据需要的算式、公式等分别写在不同的用以处理数据的处理框内。判断框判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不成立时标明“否”或“N”。学习这部分知识的时候,要掌握各个图形的形状、作用及使用规则,画程序框图的规则如下:1、使用标准的图形符号。2、框图一般按从上到下、从左到右的方向画。3、除判断框外,大多数流程图符号只有一个进入点和一个退出点。判断框具有超过一个退出点的唯一符号。4、判断框分两大类,一类判断框“是”与“否”两分支的判断,而且有且仅有两个结果;另一类是多分支判断,有几种不同的结果。5、在图形符号内描述的语言要非常简练清楚。(3)、算法的三种基本逻辑结构:顺序结构、条件结
11、构、循环结构。顺序结构:顺序结构是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,它是任何一个算法都离不开的一种基本算法结构。顺序结构在程序框图中的体现就是用流程线将程序框自上而下地连接起来,按顺序执行算法步骤。如在示意图中,A框和B框是依次执行的,只有在执行完A框指定的操作后,才能接着执AB行B框所指定的操作。例3、已知一个三角形的三边分别为2、3、4,利用海伦公式设计一个算法,求出它的面积,并画出算法的程序框图。 (解法见课本)pAB是否条件结构:条件结构是指在算法中通过对条件的判断,根据条件是否成立而选择不同流向的算法结构。它的
12、一般形式如右图所示:注意:右图此结构中包含一个判断框,根据给定的条件P是否成立而选择执行A框或B框。无论P条件是否成立,只能执行A框或B框之一,不可能同时执行A框和B框,也不可能A框、B框都不执行。一个判断结构可以有多个判断框。例4、任意给定3个正实数,设计一个算法,判断分别以这3个数为三边边长的三角形是否存在。画出这个算法的程序框图。解:(见课本) 循环结构:在一些算法中,经常会出现从某处开始,按照一定条件,反复执行某一处理步骤的情况,这就是循环结构,反复执行的处理步骤为循环体,显然,循环结构中一定包含条件结构。循环结构又称重复结构,循环结构可细分为两类:(1)、一类是当型循环结构,如下左图
13、所示,它的功能是当给定的条件P成立时,执行A框,A框执行完毕后,再判断条件P是否成立,如果仍然成立,再执行A框,如此反复执行A框,直到某一次条件P不成立为止,此时不再执行A框,离开循环结构。(2)、另一类是直到型循环结构,如下右图所示,它的功能是先执行,然后判断给定的条件P是否成立,如果P仍然不成立,则继续执行A框,直到某一次给定的条件P成立为止,此时不再执行A框,离开循环结构。A成立不成立P不成立P成立Ap 当型循环结构 直到型循环结构注意:1循环结构要在某个条件下终止循环,这就需要条件结构来判断。因此,循环结构中一定包含条件结构,但不允许“死循环”。2在循环结构中都有一个计数变量和累加变量
14、。计数变量用于记录循环次数,累加变量用于输出结果。计数变量和累加变量一般是同步执行的,累加一次,计数一次。例5、设计一个计算123100的值的算法,并画出程序框图。解:算法和程序框图(可参看课本)课堂小结:本节课主要讲述了程序框图的基本知识,包括常用的图形符号、算法的基本逻辑结构,算法的基本逻辑结构有三种,即顺序结构、条件结构和循环结构。其中顺序结构是最简单的结构,也是最基本的结构,循环结构必然包含条件结构,所以这三种基本逻辑结构是相互支撑的,它们共同构成了算法的基本结构,无论怎样复杂的逻辑结构,都可以通过这三种结构来表达。在具体画程序框图时,要注意的问题:流程线上要有标志执行顺序的前头;判断
15、框后边的流程线应根据情况标注“是”或“否”;在循环结构中,要注意根据条件设计合理的计数变量、累加变量等. 121输入、输出语句和赋值语句教学目标:(1) 正确理解输入语句、输出语句、赋值语句的结构。(2) 让学生充分地感知、体验应用计算机解决数学问题的方法;并能初步操作、模仿。(3) 实例使学生理解3种基本的算法语句(输入语句、输出语句和赋值语句)的表示方法、结构和用法,能用这三种基本的算法语句表示算法,进一步体会算法的基本思想。教学难点重点:正确理解输入语句、输出语句、赋值语句的作用。学法:我们用自然语言或程序框图描述的算法,计算机是无法“看得懂,听得见”的。因此还需要将算法用计算机能够理解
16、的程序设计语言翻译成计算机程序。程序设计语言有很多种。如BASIC,Foxbase,C语言,C+,J+,VB,VC,JB等。为了实现算法中的三种基本的逻辑结构:顺序结构、条件结构和循环结构,各种程序设计语言中都包含下列基本的算法语句:输入语句、输出语句、赋值语句条件语句和循环语句.今天,我们一起用类BASIC语言学习输入语句、输出语句、赋值语句。教学过程:输入语句、输出语句和赋值语句基本上对应于算法中的顺序结构。下面的例题是用这三种基本的算法语句表示的一个算法。例1:用描点法作函数yx33x224x30的图象时,需要求出自变量和函数的一组对应值。编写程序,分别计算当x5,4,3,2,1,0,1
17、,2,3,4,5时的函数值。程序:INPUT“x”;x 输入语句 yx33*x224*x30 赋值语句 PRINT x 打印语句 PRINT y 打印语句 END输入语句图形计算器格式INPUT“提示内容”;变量INPUT “提示内容”,变量(1)输入语句的一般格式(2)输入语句的作用是实现算法的输入信息功能;(3)“提示内容”提示用户输入什么样的信息,变量是指程序在运行时其值是可以变化的量;(4)输入语句要求输入的值只能是具体的常数,不能是函数、变量或表达式;(5)提示内容与变量之间用分号“;”隔开,若输入多个变量,变量与变量之间用逗号“,”隔开。输出语句PRINT“提示内容”;表达式图形计
18、算器格式Disp “提示内容”,变量(1)输出语句的一般格式(2)输出语句的作用是实现算法的输出结果功能;(3)“提示内容”提示用户输入什么样的信息,表达式是指程序要输出的数据;(4)输出语句可以输出常量、变量或表达式的值以及字符。赋值语句变量表达式图形计算器格式表达式变量(1)赋值语句的一般格式(2)赋值语句的作用是将表达式所代表的值赋给变量;(3)赋值语句中的“”称作赋值号,与数学中的等号的意义是不同的。赋值号的左右两边不能对换,它将赋值号右边的表达式的值赋给赋值号左边的变量;(4)赋值语句左边只能是变量名字,而不是表达式,右边表达式可以是一个数据、常量或算式;(5)对于一个变量可以多次赋
19、值。注意:赋值号左边只能是变量名字,而不能是表达式。如:2=X是错误的。赋值号左右不能对换。如“A=B”“B=A”的含义运行结果是不同的。不能利用赋值语句进行代数式的演算。(如化简、因式分解、解方程等)赋值号“=”与数学中的等号意义不同。例2:编写程序,计算一个学生数学、语文、英语三门课的平均成绩。分析:先写出算法,画出程序框图,再进行编程。INPUT “Maths=”;aINPUT “Chinese=”;bINPUT “English=”;cPRINT “The average=”;(abc)/3END程序:例3、给一个变量重复赋值。(解法略)例4、交换两个变量A和B的值,并输出交换前后的值
20、。程序: 分析:引入一个中间变量X,将A的值赋予X,又将B的值赋予A,再将X的值赋予B,从而达到交换A,B的值。(比如生活中交换装满红墨水和蓝墨水的两个瓶子里的墨水,需要再找一个空瓶子)P15 练习 1. 2. 3 课堂小结本节课介绍了输入语句、输出语句和赋值语句的结构特点及联系。掌握并应用输入语句,输出语句,赋值语句编写一些简单的程序解决数学问题,特别是掌握赋值语句中“=”的作用及应用。编程一般的步骤:先写出算法,再进行编程。我们要养成良好的习惯,也有助于数学逻辑思维的形成。注意:BASIC语言中的标准函数,如SQR(x)表示x的算术平方根,ABS(x)表示x的绝对值等。 122条件语句教学
21、目标:1正确理解条件语句的概念,并掌握其结构。2会应用条件语句编写程序。教学重点:条件语句的步骤、结构及功能。 教学难点:会编写程序中的条件语句。教学过程条件语句: 1、条件语句的一般格式有两种:(1)IFTHENELSE语句;(2)IFTHEN语句。2、IFTHENELSE语句IFTHENELSE语句的一般格式为图1,对应的程序框图为图2。否是满足条件?语句1语句2IF 条件 THEN语句1ELSE语句2END IF 图1 图2分析:在IFTHENELSE语句中,“条件”表示判断的条件,“语句1”表示满足条件时执行的操作内容;“语句2”表示不满足条件时执行的操作内容;END IF表示条件语句
22、的结束。计算机在执行时,首先对IF后的条件进行判断,如果条件符合,则执行THEN后面的语句1;若条件不符合,则执行ELSE后面的语句2。3、IFTHEN语句满足条件?语句是否(图4)IFTHEN语句的一般格式为图3,对应的程序框图为图4。IF 条件 THEN语句END IF(图3) 注意:“条件”表示判断的条件;“语句”表示满足条件时执行的操作内容,条件不满足时,结束程序;END IF表示条件语句的结束。计算机在执行时首先对IF后的条件进行判断,如果条件符合就执行THEN后边的语句,若条件不符合则直接结束该条件语句,转而执行其它语句。例5、编写程序,输入一元二次方程ax2bxc0的系数,输出它
23、的实数根。分析:先把解决问题的思路用程序框图表示出来,然后再根据程序框图给出的算法步骤,逐步把算法用对应的程序语句表达出来。(程序框图先由学生讨论,再统一,可以参考课本)算法分析:在求解方程之前,需要首先判断判别式的符号,再根据判别式的符号判断方程根的情况:0时,方程有两个不相等的实数根;0时,方程有两个相等的实数根;0时,方程没有实数根。这个过程可以用算法中的条件结构来表示。课本练习2小结:条件语句一般用在需要对条件进行判断的算法设计中,如判断一个数的正负,确定两个数的大小等问题,还有求分段函数的函数值等,往往要用条件语句,有时甚至要用到条件语句的嵌套编程的一般步骤:(1)算法分析 :根据提
24、供的问题,利用数学及相关学科的知识,设计出解决问题的算法。(2)画程序框图:依据算法分析,画出程序框图。(3)写出程序 :根据程序框图中的算法步骤,逐步把算法用相应的程序语句表达出来。 123循环语句教学目标:1正确理解循环语句的概念,并掌握其结构。2会应用循环语句编写程序。教学重点:两种循环语句的表示方法、结构和用法,用循环语句表示算法。教学难点:理解循环语句的表示方法、结构和用法,会编写程序中的循环语句。教学过程: 算法中的循环结构是由循环语句来实现的。对应于程序框图中的两种循环结构,一般程序设计语言中也有当型(WHILE型)和直到型(UNTIL型)两种语句结构。即WHILE语句和UNTI
25、L语句。WHILE语句满足条件?循环体否是(1)WHILE语句的一般格式是 对应的程序框图是WHILE 条件循环体WEND(2)当计算机遇到WHILE语句时,先判断条件的真假,如果条件符合,就执行WHILE与WEND之间的循环体;然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止。这时,计算机将不执行循环体,直接跳到WEND语句后,接着执行WEND之后的语句。因此,当型循环有时也称为“前测试型”循环。满足条件?循环体是否UNTIL语句(1)UNTIL语句的一般格式是 对应的程序框图是DO循环体LOOP UNTIL 条件(2)直到型循环又称为“后测试型
26、”循环,从UNTIL型循环结构分析,计算机执行该语句时,先执行一次循环体,然后进行条件的判断,如果条件不满足,继续返回执行循环体,然后再进行条件的判断,这个过程反复进行,直到某一次条件满足时,不再执行循环体,跳到LOOP UNTIL语句后执行其他语句,是先执行循环体后进行条件判断的循环语句。分析:当型循环与直到型循环的区别:(先由学生讨论再归纳)(1) 当型循环先判断后执行,直到型循环先执行后判断;(2) 在WHILE语句中,是当条件满足时执行循环体,在UNTIL语句中,是当条件不满足时执行循环体。例1:编写程序,计算自然数1+2+3+99+100的和。分析:这是一个累加问题。我们可以用WHI
27、LE型语句,也可以用UNTIL型语句。程序(WHILE语句):(略) 程序(UNTIL语句):(略)练习(课本23页)小结1、循环语句的两种不同形式:WHILE语句和UNTIL语句(另补充了For语句),掌握它们的一般格式。2、在用WHILE语句和UNTIL语句编写程序解决问题时,一定要注意它们的格式及条件的表述方法。WHILE语句中是当条件满足时执行循环体,而UNTIL语句中是当条件不满足时执行循环体。3、循环语句主要用来实现算法中的循环结构,在处理一些需要反复执行的运算任务。如累加求和,累乘求积等问题中常用到。13进位制教学目标:1了解各种进位制与十进制之间转换的规律,会利用各种进位制与十
28、进制之间的联系进行各种进位制之间的转换。 2学习各种进位制转换成十进制的计算方法,研究十进制转换为各种进位制的除k去余法,并理解其中的数学规律。教学重点:各进位制表示数的方法及各进位制之间的转换教学难点:除k取余法的理解以及各进位制之间转换的程序框图及其程序的设计学法:学习各种进位制特点的同时探讨进位制表示数与十进制表示数的区别与联系,熟悉各种进位制表示数的方法,从而理解十进制转换为各种进位制的除k取余法。教学过程引入:我们常见的数字都是十进制的,比如一般的数值计算,但是并不是生活中的每一种数字都是十进制的.比如时间和角度的单位用六十进位制,电子计算机用的是二进制,旧式的称是十六进制的,计算一
29、打数值时是12进制的.那么什么是进位制?不同的进位制之间又又什么联系呢?进位制是一种记数方式,用有限的数字在不同的位置表示不同的数值。可使用数字符号的个数称为基数,基数为n,即可称n进位制,简称n进制。现在最常用的是十进制,通常使用10个阿拉伯数字0-9进行记数。对于任何一个数,我们可以用不同的进位制来表示。比如:十进数57,可以用二进制表示为111001,也可以用八进制表示为71、用十六进制表示为39,它们所代表的数值都是一样的。一般地,若k是一个大于一的整数,那么以k为基数的k进制可以表示为:,而表示各种进位制数一般在数字右下脚加注来表示,如111001(2)表示二进制数,34(5)表示5
30、进制数如:把二进制数110011(2)化为十进制数. 110011=1*25+1*24+0*23+0*22+1*21+1*20=32+16+2+1=51把八进制数化为十进制数. 例4、把二进制数110011(2)化为十进制数.解:110011=1*25+1*24+0*23+0*22+1*21+1*20=32+16+2+1=51例5 把89化为二进制数.解:根据二进制数满二进一的原则,可以用2连续去除89或所得商,然后去余数.具体的计算方法如下:89=2*44+1 44=2*22+0 22=2*11+011=2*5+1 5=2*2+1所以:89=2*(2*(2*(2*(2*2+1)+1)+0)+
31、0)+1=1*26+0*25+1*24+1*23+0*22+0*21+1*20=1011001(2)这种算法叫做除2取余法,还可以用下面的除法算式表示:把上式中的各步所得的余数从下到上排列即可得到89=1011001(2)上述方法也可以推广为把十进制化为k进制数的算法,这种算法成为除k取余法.例6 利用除k取余法把89转换为5进制数具体的计算方法如把十进制数化为二进制数。把k进制数a(共有n位)转换为十进制数b的过程可以利用计算机程序来实现,语句为:INPUT a,k,n i=1 b=0WHILE i=n t=GET ai b=b+t*k(i-1) i=i+1WEND PRINT b END小
32、结:(1)进位制的概念及表示方法(2)十进制与二进制之间转换的方法及程序(3) 图形计算器进一步激发学生在算法方面的潜能,更能体现他们的创造精神。13秦九韶算法与排序(两个课时)教学目标:1了解秦九韶算法的计算过程,并理解利用秦九韶算法可以减少计算次数提高计算效率的实质。 2掌握数据排序的原理能使用直接排序法与冒泡排序法给一组数据排序,进而能设计冒泡排序法的程序框图及程序,理解数学算法与计算机算法的区别,理解计算机对数学的辅助作用。教学重点:秦九韶算法的特点及其程序设计,两种排序法的排序步骤及其程序设计教学难点:秦九韶算法的先进性理解及其程序设计,排序法的计算机程序设计教学过程 (秦九韶计算多
33、项式的方法)例1、 设计求多项式f(x)=2x5-5x4-4x3+3x2-6x+7当x=5时的值的算法,并写出程序。个别学生提出一般的解决方案,如:x=5 y=2 * x5 5 * x4 4 * x3 + 3 * x2 6 * x + 7 PRINT“y=”;y END提问:例1计算时需要多少次乘法计算?多少次加法计算?有什么优缺点?(上述算法一共做了解15次乘法运算,5次加法运算,优点是简单、易懂。缺点是不通用,不能解决任意多项式的求值问题,而且计算效率不高。)提问:计算x的幂时,可以利用前面的计算结果,以减少计算量,即先计算x2,然后依次计算x2.x,(x2.x).x, ((x2.x).x
34、).x的值,这样计算上述多项式的值,一共需要多少次乘法,多少次加法?(上述算法一共做了解4次乘法运算,5次加法运算。)结论:第二种做法与第一种做法相比,乘法的运算次数减少了,因而能提高运算效率,而且对于计算机来说,做一次乘法所需的运算时间比做一次加法要长得多,因此第二种做法更快地得到结果。我们把多项式变形为:f(x)= 2x5-5x4-4x3+3x2-6x+7=(2x-5)x-4)x+3)x-6)x+7从内到外,如果把每一个括号都看成一个常数,x的系数依次是什么?用图表可以表示为:多项式x系数2-5-43-67运算10251055402670+变形后x的系数25211085342677*5最后
35、的系数2677即为所求的值,让学生描述上述计算过程。上述算法就是“秦九韶算法”。如何应用秦九韶算法完成一般的多项式f(x)=anxn+an-1xn-1+.+a1x+a0求值问题?f(x)=anxn+an-1xn-1+.+a1x+a0=( anxn-1+an-1xn-2+.+a1)x+a0 =( anxn-2+an-1xn-3+.+a2)x+a1)x+a0 =.=(.( anx+an-1)x+an-2)x+.+a1)x+a0求多项式的值时,首先计算最内层括号内依次多项式的值,即v1=anx+an-1然后由内向外逐层计算一次多项式的值,即v2=v1x+an-2 v3=v2x+an-3 . vn=v
36、n-1x+a0这样,把n次多项式的求值问题转化成求n个一次多项式的值的问题观察秦九韶算法的数学模型,计算vk时要用到vk-1的值,若令v0=an,我们可以得到下面的递推公式:v0=anvk=vk-1+an-k(k=1,2,n)这是一个在秦九韶算法中反复执行的步骤,可以用循环结构来实现。例2、已知一个五次多项式f(x)=5x5+2x4+3.5x3-2.6x2+1.7x-0.8用秦九韶算法求当x=5时多项式的值。分析:先画出程序框图(见课本)排序排序的算法很多,课本主要介绍里两种排序方法:直接插入排序和冒泡排序1、直接插入排序基本思想:插入排序的思想就是读一个,排一个。将第个数放入数组的第个元素中
37、,以后读入的数与已存入数组的数进行比较,确定它在从大到小的排列中应处的位置将该位置以及以后的元素向后推移一个位置,将读入的新数填入空出的位置中(由于算法简单,可以举例说明)2、冒泡排序基本思想:依次比较相邻的两个数,把大的放前面,小的放后面.即首先比较第1个数和第2个数,大数放前,小数放后.然后比较第2个数和第3个数.直到比较最后两个数.第一趟结束,最小的一定沉到最后.重复上过程,仍从第1个数开始,到最后第2个数. 由于在排序过程中总是大数往前,小数往后,相当气泡上升,所以叫冒泡排序. 例3、用冒泡法对数据7,5,3,9,1从小到大进行排序。小结(1)秦九韶算法计算多项式的值及程序设计(2)数
38、字排序法中的常见的两种排序法直接插入排序法与冒泡排序法(3)冒泡法排序的计算机程序设计(4)注意循环语句的使用与算法的循环次数,对算法进行改进。13辗转相除法与更相减损术教学目标:1理解辗转相除法与更相减损术中蕴含的数学原理,并能根据这些原理进行算法分析。 2基本能根据算法语句与程序框图的知识设计完整的程序框图并写出算法程序。教学重点:理解辗转相除法与更相减损术求最大公约数的方法。教学难点:把辗转相除法与更相减损术的方法转换成程序框图与程序语言。教学过程提出问题:在小学,我们已经学过求最大公约数的知识,如口算求出12与20的公约数。分析:我们都是利用找公约数的方法来求最大公约数,如果公约数比较
39、大而且根据我们的观察又不能得到一些公约数,我们又应该怎样求它们的最大公约数?比如求8251与6105的最大公约数?这就是我们这一堂课所要探讨的内容。辗转相除法例1 求两个正数8251和6105的最大公约数。分析:8251与6105两数都比较大,而且没有明显的公约数,可以把它们都变小一点,根据已有的知识即可求出最大公约数8251610512146显然8251的最大公约数也必是2146的约数,同样6105与2146的公约数也必是8251的约数,所以8251与6105的最大公约数也是6105与2146的最大公约数。6105214621813 21461813133318133335148 33314
40、82371483740 则37为8251与6105的最大公约数。以上我们求最大公约数的方法就是辗转相除法。也叫欧几里德算法,它是由欧几里德在公元前300年左右首先提出的。利用辗转相除法求最大公约数的步骤如下:(1):用较大的数m除以较小的数n得到一个商和一个余数;(2):若0,则n为m,n的最大公约数;若0,则用除数n除以余数得到一个商和一个余数;(3):若0,则为m,n的最大公约数;若0,则用除数除以余数得到一个商和一个余数; 依次计算直至0,此时所得到的即为所求的最大公约数。更相减损术我国早期也有求最大公约数问题的算法,就是更相减损术。在九章算术中有更相减损术求最大公约数的步骤:可半者半之
41、,不可半者,副置分母子之数,以少减多,更相减损,求其等也,以等数约之。翻译为:(1):任意给出两个正数;判断它们是否都是偶数。若是,用2约简;若不是,执行第二步。(2):以较大的数减去较小的数,接着把较小的数与所得的差比较,并以大数减小数。继续这个操作,直到所得的数相等为止,则这个数(等数)就是所求的最大公约数。例2 用更相减损术求98与63的最大公约数.分析:(略) 辗转相除法与更相减损术的区别:(1)都是求最大公约数的方法,计算上辗转相除法以除法为主,更相减损术以减法为主,计算次数上辗转相除法计算次数相对较少,特别当两个数字大小区别较大时计算次数的区别较明显。(2)从结果体现形式来看,辗转
42、相除法体现结果是以相除余数为0则得到,而更相减损术则以减数与差相等而得到小结:对比分析辗转相除法与更相减损术求最大公约数的计算方法及完整算法程序。 2.1.1简单随机抽样教学目标:1结合实际问题情景,理解随机抽样的必要性和重要性 2学会用简单随机抽样的方法从总体中抽取样本教学重点:学会用简单随机抽样的方法从总体中抽取样本教学过程:1总体和样本 在统计学中 , 把研究对象的全体叫做总体把每个研究对象叫做个体把总体中个体的总数叫做总体容量为了研究总体的有关性质,一般从总体中随机抽取一部分:, , , 研究,我们称它为样本其中个体的个数称为样本容量2简单随机抽样,也叫纯随机抽样。就是从总体中不加任何
43、分组、划类、排队等,完全随 机地抽取调查单位。特点是:每个样本单位被抽中的可能性相同(概率相等),样本的每个单位完全独立,彼此间无一定的关联性和排斥性。简单随机抽样是其它各种抽样形式的基础。通常只是在总体单位之间差异程度较小和数目较少时,才采用这种方法。3简单随机抽样常用的方法: (1)抽签法;随机数表法;计算机模拟法;使用统计软件直接抽取。在简单随机抽样的样本容量设计中,主要考虑:总体变异情况;允许误差范围;概率保证程度。4抽签法: (1)给调查对象群体中的每一个对象编号; (2)准备抽签的工具,实施抽签 (3)对样本中的每一个个体进行测量或调查 例:请调查你所在的学校的学生做喜欢的体育活动情况。5随机数表法: 例:利用随机数表在所在的班级中抽取10位同学参加某项活动。课堂练习:第52页,练习A,练习B小结:本节重点介绍简单随机抽样常用的方法:抽签法;随机数表法;学会用简单随机抽样的方法从总体中抽取样本课后作业:第58页,习题2-1A第1、2、3题,2.1.2系统抽样教学目标:1结合实际问题情景,理解系统抽样的必要性和重要性 2学会用系统抽样的方法从总体中抽取样本教学重点