人教版高中数学【必修三】[知识点整理及重点题型梳理]_算法案例_基础

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

人教版高中数学必修三

知识点梳理

重点题型(常考知识点

)巩固练习

算法案例

【学习目标】

1.理解辗转相除法与更相减损术中蕴含的数学原理,并能根据这些原理进行算法分析;

2.基本能根据算法语句与程序框图的知识设计完整的程序框图并写出算法程序;

3.了解秦九韶算法的计算过程,并理解利用秦九韶算法可以减少计算次数提高计算效率的实质;

4.了解各种进位制与十进制之间转换的规律,会利用各种进位制与十进制之间的联系进行各种进位制 之间的转换.

【要点梳理】

要点一、辗转相除法

也叫欧几里德算法,它是由欧几里德在公元前 300 年左右首先提出的.利用辗转相除法求最大公约数 的步骤如下:

第一步:用较大的数 m 除以较小的数 n 得到一个商 q 0 和一个余数 r 0; 第二步:若 r 0=0,则 n 为 m ,n 的最大公约数;若 r 0≠0,则用除数 n 除以余数 r 0 得到一个商 q 1 和一 个余数 r 1;

第三步:若 r 1=0,则 r 0 为 m ,n 的最大公约数;若 r 1≠0,则用除数 r 0 除以余数 r 1 得到一个商 q 2 和一 个余数 r 2;

……

依次计算直至 r n =0,此时所得到的 r n -1 即为所求的最大公约数. 用辗转相除法求最大公约数的程序框图为:

程序:

INPUT“m=”;m

INPUT“n=”;n

IF m

x=m

m=n

n=x

END IF

r=m MOD n

WHILE r<>0

r=m MOD n

m=n

n=r

WEND

PRINT n

END

要点诠释:

辗转相除法的基本步骤是用较大的数除以较小的数,考虑到算法中的赋值语句可以对同一变量多次赋值,我们可以把较大的数用变量m表示,把较小的数用变量n表示,这样式子m=n⋅q+r(0≤r

是一个反复执行的步骤,因此可以用循环结构实现算法.

要点二、更相减损术

我国早期也有解决求最大公约数问题的算法,就是更相减损术.

更相减损术求最大公约数的步骤如下:可半者半之,不可半者,副置分母、子之数,以少减多,更相减损,求其等也.以等数约之.

翻译出来为:

第一步:任意给出两个正整数;判断它们是否都是偶数.若是,用2约简;若不是,执行第二步.

第二步:以较大的数减去较小的数,接着把较小的数与所得的差比较,并以大数减小数.继续这个操作,直到所得的数相等为止,则这个数(等数)就是所求的最大公约数.

理论依据:

由a-b=r→a=b+r,得a,b与b,r有相同的公约数

更相减损术一般算法:

第一步,输入两个正整数a,b(a>b);

第二步,如果a≠b,则执行S3,否则转到S5;

第三步,将a-b的值赋予r;

第四步,若b>r,则把b赋予a,把r赋予b,否则把r赋予a,重新执行S2;

第五步,输出最大公约数b.

程序:

INPUT“a=”,a

INPUT“b=”,b

WHILE a<>b

IF a>=b

a=a-b;

ELSE

b=b-a

WEND

END

PRINT b

或者

INPUT“请输入两个不相等的正整数”;a,b

i=0

WHILE a MOD2=0AND b MOD2=0

a=a/2

b=b/2

i=i+1

WEND

DO

IF b

t=a

a=b

b=t

END IF

, 则 有 ⎨ 0 k c=a -b a=b b=c

LOOP UNTIL a=b PRINT a^i END

要点诠释:

用辗转相除法步骤较少,而更相减损术虽然有些步骤较长,但运算简单. 要点三、秦九韶计算多项式的方法

f ( x ) = a x n + a x n -1 + a n

n -1

n -2

x n -2 +

+ a x + a 1

= (a x n -1 + a x n -2 + a n

n -1

n -2

x n -3 +

+ a ) x + a

1

= ((a x n -2 + a x n -3 +

n

n -1

=

+ a ) x + a ) x + a

2 1 0

= ( ((a x + a ) x + a n

n -1

n -2 ) x +

+ a ) x + a

1 0

令 v = ( k

((a x + a

n

n -1

) x + a

n -2

) x +

+ a

n -(k -1)

) x + a

n -k

⎧v = a

n ⎩v k = v -1 x + a

, 其 中

- n k

k = 1,2, n .这样,我们便可由 v 依次求出 v , v , v ;

1

2

n

v = v x + a , 1

n -1

v = v x + a

,

2

1

n -2

v = v x + a , 3

2

n -3

v = v n

n -1

x + a

要点诠释:

显然,用秦九韶算法求 n 次多项式的值时只需要做 n 次乘法和 n 次加法运算 要点四、进位制

进位制是一种记数方式,用有限的数字在不同的位置表示不同的数值.可使用数字符号的个数称为基 数,基数为 n ,即可称 n 进位制,简称 n 进制.现在最常用的是十进制,通常使用 10 个阿拉伯数字 0-9 进 行记数.

对于任何一个数,我们可以用不同的进位制来表示.比如:十进数 57,可以用二进制表示为 111001, 也可以用八进制表示为 71、用十六进制表示为 39,它们所代表的数值都是一样的.

表示各种进位制数一般在数字右下角加注来表示,如 111001(2)表示二进制数,34(5)表示 5 进制数.

1.k 进制转换为十进制的方法:

a a a a a a

n n -1

2 1 0(k )

= a ⨯ k n + a

n

n -1

⨯ k n -1 + + a ⨯ k 2 + a ⨯ k + a ,把 k 进制数 a 转化为十进制 2 1 0

数 b 的算法程序为:

INPUT “ a,k,n=”;a,k,n i=1 b=0

WHILE i<=n

相关文档
最新文档