1、高一数学必修 3 公式总结1 算法初步秦九韶算法是一种将一元 n 次多项式的求值问题转化为 n 个一次式的算法。一般地,一元 n 次多项式的求值需要经过n(n+1 )/2 次乘法和 n 次加法,而秦九韶算法只需要 n 次乘法和 n 次加法。对于一个 n 次多项式,至多做 n 次乘法和 n 次加法表达式如下: 122111 . axxaxaxannnn 例题:秦九韶算法计算多项式 ,18765432346 x, 0.4时当 答案: 6 , 6?运 算需 要 做 几 次 加 法 和 乘 法187543x : x即 理解算法的含义:一般而言,对于一类问题的机械的、统一的求解方法称为算法,其意义具有广
2、泛的含义,如:广播操图解是广播操的算法,歌谱是一首歌的算法,空调说明书是空调使用的算法(algorithm)1. 描述算法有三种方式:自然语言,流程图,程序设计语言(本书指伪代码).2. 算法的特征:有限性:算法执行的步骤总是有限的,不能无休止的进行下去确定性:算法的每一步操作内容和顺序必须含义确切,而且必须有输出,输出可以是一个或多个。没有输出的算法是无意义的。可行性:算法的每一步都必须是可执行的,即每一步都可以通过手工或者机器在一定时间内可以完成,在时间上有一个合理的限度3. 算法含有两大要素:操作:算术运算,逻辑运算,函数运算,关系运算等控制结构:顺序结构,选择结构,循环结构。 流程图:
3、(flow chart): 是用一些规定的图形、连线及简单的文字说明表示算法及程序结构的一种图形程序,它直观、清晰、易懂,便于检查及修改。注意:1. 画流程图的时候一定要清晰,用铅笔和直尺画,要养成有开始和结束的好习惯。2. 拿不准的时候可以先根据结构特点画出大致的流程,反过来再检查,比如:遇到判断框时,往往临界的范围或者条件不好确定,就先给出一个临界条件,画好大致流程,然后检查这个条件是否正确,再考虑是否取等号的问题,这时候也就可以有几种书写方法了。3. 在输出结果时,如果有多个输出,一定要用流程线把所有的输出总结到一起,一起终结到结束框。算法结构:顺序结构, 选择结构, 循环结构N YAp
4、 Y N NpAABY N A Bp直到型循环 当型循环.顺序结构(sequence structure ):是一种最简单最基本的结构它不存在条件判断、控制转移和重复执行的操作,一个顺序结构的各部分是按照语句出现的先后顺序执行的。.选择结构(selection structure ):或者称为分支结构。其中的判断框,书写时主要是注意临界条件的确定。它有一个入口,两个出口,执行时只能执行一个语句,不能同时执行,其中的 A,B 两语句可以有一个为空,既不执行任何操作,只是表明在某条件成立时,执行某语句,至于不成立时,不执行该语句,也不执行其它语句。.循环结构(cycle structure):它用
5、来解决现实生活中的重复操作问题,分直到型(until)和当型(while) 两种结构( 见上图)。当事先不知道是否至少执行一次循环体时(即不知道循环次数时)用当型循环。基本算法语句:本书中指的是伪代码(pseudo code),且是使用 BASIC 语言编写的,是介自然语言和机器语言之间的文字和符号,是表达算法的简单而实用的好方法。伪代码没有统一的格式,只要书写清楚,易于理解即可,但也要注意符号要相对统一,避免引起混淆。如:赋值语句中可以用 ,也可以用 ,表示两yxyx变量相乘时可以用“*”,也可以用“ ”. 赋值语句(assignment statement):用 表示, 如: ,yx表示将
6、 y 的值赋给 x,其中 x 是一个变量,y 是一个与 x 同类型的变量或者表达式。一般格式:“ ”,有时在伪代码的书写时也可以用“表 达 式变 量 ”,但此时的 “=”不是数学运算中的等号,而应理解为一个yx赋值号。注:1. 赋值号左边只能是变量,不能是常数或者表达式,右边可以是常数或者表达式。“= ”具有计算功能。如:3=a,b+6=a,都是错误的,而 a=3*51,a=2a +3 都是正确的。2.一个赋值语句一次只能给一个变量赋值。 如:a=b=c=2,a ,b,c =2 都是错误的,而 a=3 是正确的。例题:将 x 和 y 的值交换同样的如果交换三个变量 x,y,z 的值:.输入语句
7、(input statement):Read a, b 表示输入的数一次送给a,b输出语句(out statement):Print x,y 表示一次输出运算结果x,y注:1.支持多个输入和输出,但是中间要用逗号隔开!2.Read 语句输入的只能是变量而不是表达式 pzyxpyx3.Print 语句不能起赋值语句,意旨不能在 Print 语句中用“=”4.Print 语句可以输出常量和表达式的值5.有多个语句在一行书写时用“;”隔开例题:当 x 等于 5 时,Print“x= ”;x 在屏幕上输出的结果是 x=5.条件语句(conditional statement ):1.行 If 语句 :
8、 If A Then B 注:没有 End If 2.块 If 语句: 注:不要忘记结束语句 End If ,当有 If 语句嵌套使用时,有几个If,就必须要有几个 End If . Else If 是对上一个条件的否定,即已经不属于上面的条件,另外 Else If 后面也要有 End If 注意每个条件的临界性,即某个值是属于上一个条件里,还是属于下一个条件。为了使得书写清晰易懂,应缩进书写。格式如下:例题:用条件语句写出求三个数种最大数的一个算法。If A ThenBElseCEnd IfIf A ThenBElse If C ThenDEnd IfRead a , b , cIf ab
9、ThenIf ac ThenPrint a Else Print cEnd If Else If bc ThenPrint bElse Print cEnd If End IfRead a , b , cIf ab and ac ThenPrint aElse If bc ThenPrint bElsePrint cEnd If或者 注:1. 同样的你可以写出求三个数中最小的数。2. 也可以类似的求出四个数中最小、大的数.循环语句(cycle statement): 当事先知道循环次数时用 For 循环 ,即使是 N 次也是已知次数的循环 当循环次数不确定时用 While 循环 Do 循环有两
10、种表达形式,与循环结构的两种循环相对应.说明:1. While 循环是前测试型的,即满足什么条件才进入循环,其实质是当型循环,一般在解决有关问题时,可以写成 While 循环,较为简单,因为它的条件相对好判断. For I From 初值 to 终值 Step 步长End For For 循环While AEnd While While 循环Do While p Loop 当型 Do 循环Do Loop Until p 直到型 Do 循环2. 凡是能用 While 循环书写的循环都能用 For 循环书写 3. While 循环和 Do 循环可以相互转化 4. Do 循环的两种形式也可以相互转化,转化时条件要相应变化 5. 注意临界条件的判定.