《1.3算法案例》ppt课件

合集下载

1、3、1算法案例(辗转相除法)

1、3、1算法案例(辗转相除法)
2、两个数21672,8127的最大公约数是 ( ) A、2709 B、2606 C、2703 D、2706
新课讲解:
怎样求多项式f(x)=x5+x4+x3+x2+x+1当x=5时的值呢?
计算多项式f(x) =x5+x4+x3+x2+x+1
当x = 5的值的算法:
算法1:因为f(x) =x5+x4+x3+x2+x+1
例2.求225和135的最大公约数
例1.求196和147的最大公约数 例2.求225和135的最大公约数
1、解: 196=147×1+49 147=49×3+0
所以,196与147的 最大公约数为:49
2、解: 225=135×1+90
135=90×1+45
90=45×2+0 所以,225与135的
算法步骤:
第一步:给定两个正整数m,n; 第二步:计算m除以n所得的余数r; 第三步:m=n,n=r; 第四步:若r=0,则m,n的最大公约数等于m; 否则,返回第二步。
开始
程序框图:
输入m,n
求m除以n的余数r
m=n
n=r 否
r=0 ? 是
输入m 结束
程序:
INPUT m,n DO
r= m MOD n m=n n=r LOOP UNTIL r=0 PRINT m END
算法1 辗转相除法
被除数=除数×商+余数
30=18×1+12
18=12×1+6
30与18的最大公约数相当于 18与12的最大公约数 18与12的最大公约数相当于 12与6的最大公约数
12=6×2+0
12与6的最大公约数为:6

1.3《算法案例--辗转相除法与更相减损术》

1.3《算法案例--辗转相除法与更相减损术》
第一步 用两数中较大的数除以较小的数,求得商和余数 8251=6105×1+2146
结论: 8251和6105的公约数就是6105和2146的公约数,求8251和6105的最大公约数,只要求出6105和2146的公约数就可以了。
第二步 对6105和2146重复第一步的做法 6105=2146×2+1813 同理6105和2146的最大公约数也是2146和1813的最大公约数。
1813=333×5+148
333=148×2+37 148=37×4+0 显然37是148和37的最大公约数, 也就是8251和6105的最大公约 数
ks5u精品课件
一、辗转相除法(欧几里得算法) 算理:所谓辗转相除法,就是对于给定的两 个数,用较大的数除以较小的数。若余数不 为零,则将余数和较小的数构成新的一对数, 继续上面的除法,直到大数被小数整除,则 这时较小的数就是原来两个数的最大公约数。
解:由于63不是偶数,把98和63以大数减小数, 并辗转相减 98-63=35 63-35=28 35-28=7 28-7=21 21-7=21 14-7=7 所以,98和63的最大公约数等于7
练习: 课本p48 1(1)用更相减损术计算
ks5u精品课件
用更相减损术求294和84的最大公约数时, 需做减法的次数是( )
INPUT “a,b=“;a,b WHILE a<>b r=a-b IF b>r THEN a=b b=r ELSE a=r END IF WEND PRINT b END
开始
输入a,b
b=r
a=b 是 r<b? 否 a≠b? 否 是 r=a-b a=r
输出b
结束

(人教a版)必修三同步课件:1.3算法案例

(人教a版)必修三同步课件:1.3算法案例

故加法次数要减少一次,为5-1=4.故选D.
要点三 进位制
例3 (1)把二进制数1110011(2)化为十进制数.
(2)将8进制数314706(8)化为十进制数.

(1)1110011(2)=1×26+1×25+1×24+0×23+0×22+
1×21+1=115. (2)314706(8)=3×85+1×84+4×83+7×82+0×81+6×80 =104902.所以,化为十进制数是104902.
所以80与36的最大公约数为4.
要点二
例2
秦九韶算法
已知一个5次多项式为f(x)=4x5+2x4+3.5x3-2.6x2+1.7x-0.8,用秦九韶算法求这个
多项式当x=5时的值.

将f(x)改写为f(x)=((((4x+2)x+3.5)x-2.6)x+1.7)x-
0.8, 由内向外依次计算一次多项式当x=5时的值: v0=4;
2.注意:当多项ห้องสมุดไป่ตู้中n次项不存在时,可将第n次项看作0· xn.
跟踪演练2
用秦九韶算法计算f(x)=6x5-4x4+x3-2x2-9x,需要加法(或减法)与乘法运算 ( )
的次数分别为
A.5,4 B.5,5 C.4,4 D.4,5 答案 D
解析
n次多项式需进行n次乘法;若各项均不为零,则需进
行n次加法,缺一项就减少一次加法运算.f(x)中无常数项,
v2x+an-3
vn-1x+a0 n个一次多项式
4.进位制
运算方便 进位制是人们为了_____和_________ k进一”就是k进制,k进 计数 而约定的记数系统,“满
制的基数是k.把十进制转化为k进制数时,通常用除k取余法.

人教版高中数学必修三课件:1.3 算法案例(共55张PPT)

人教版高中数学必修三课件:1.3 算法案例(共55张PPT)

解:用辗转相除法求最大公约数:612=468×1+144,468=144×3+36,144=36×4,即612
和468的最大公约数是36. 用更相减损术检验:612和468均为偶数,两次用2约简得153和117,153-117=36,11736=81,81-36=45,45-36=9,36-9=27,27-9=18,18-9=9,所以612和468的最大公约数为
转化为求n个一次多项式的值.
预习探究
知识点二 进位制
1.进位制:进位制是为了计数和运算方便而约定的记数系统,约定“满k进一”就 是 k进制 ,k进制的基数(大于1的整数)就是 k . 2.将k进制数化为十进制数的方法:先把k进制数写成各位上的数字与k的幂的乘积之和 的形式,再按照十进制数的运算规则计算出结果. 3.将十进制数化为k进制数的方法是 除k取余法 .即用k连续去除十进制数所得 的 商 ,直到商为零为止,然后把各步得到的余数 倒序 写出.所得到的就是相应的k 进制数. 4.k进制数之间的转化:首先转化为十进制数,再转化为 k进制数.
第一章 算法初步
1.3 算法案例 第2课时 秦九韶算法与进位制
预习探究
知识点一 秦九韶算法
1.秦九韶算法是我国南宋数学家秦九韶在他的著作《数书九章》中提出的一 个用于计算多项式值的方法. 2.秦九韶算法的方法: 把一个n次多项式f(x)=anxn+an-1xn-1+…+a1x+a0 改写成下列的形式: f(x)=(anxn-1+an-1xn-2+…+a1)x+a0= ((anxn-2+an-1xn-3+…+a2)x+a1)x+a0 =…=

人教A版高中数学必修三课件:1.3《算法案例--辗转相除法与更相减损术》

人教A版高中数学必修三课件:1.3《算法案例--辗转相除法与更相减损术》

小结
比较辗转相除法与更相减损术的区别
(1)都是求最大公约数的方法,计算上辗转相除
法以除法为主,更相减损术以减法为主,计算次数
上辗转相除法计算次数相对较少,特别当两个数字
大小区别较大时计算次数的区别较明显。 (2)从结果体现形式来看,辗转相除法体现结果 是以相除余数为0则得到,而更相减损术则以减数与 差相等而得到
( 1) 5
25
5
35
7
所以,25和35的最大公约数为5
思考:计算8256和6105的最大公约数.
辗转相除法(欧几里得算法)
观察用辗转相除法求8251和6105的最大公约数的过程
第一步 用两数中较大的数除以较小的数,求得商和余数 8251=6105×1+2146
结论: 8251和6105的公约数就是6105和2146的公约数,求8251和 6105的最大公约数,只要求出6105和2146的公约数就可以了。
开始 输入m,n
r=m MOD n
m=n n=r
LOOP UNTIL r=0
PRINቤተ መጻሕፍቲ ባይዱ m END
r=0?
是 输出m 结束


练习:课本p45
1、(1)(4)
ks5u精品课件
二、《九章算术》——更相减损术 算理:可半者半之,不可半者,副置分母、子 之数,以少减多,更相减损,求其等也,以等 数约之。
第二步 对6105和2146重复第一步的做法 6105=2146×2+1813 同理6105和2146的最大公约数也是2146和1813的最大公约数。
完整的过程
8251=6105×1+2146 6105=2146×2+1813 2146=1813×1+333

五年级【数学】1.3.3《算法案例——K进制化十进制》课件(人教A版必修3)---共享版

五年级【数学】1.3.3《算法案例——K进制化十进制》课件(人教A版必修3)---共享版
1.3 算法案例
第三课时
知识探究(一):进位制的概念
思考1:进位制是为了计数和运算方便而 约定的记数系统,如逢十进一,就是十 进制;每七天为一周,就是七进制;每 十二个月为一年,就是十二进制,每六 十秒为一分钟,每六十分钟为一个小时, 就是六十进制;等等.一般地,“满k进 一”就是k进制,其中k称为k进制的基数. 那么k是一个什么范围内的数?
如二进制可使用的数字有0和1,基数是2;
十进制可使用的数字有0,1,2,…,8,9等十个 数字,基数是10;
十六进制可使用的数字或符号有0~9等10 个数字以及A~F等6个字母(规定字母A~F对应 10~15),十六进制的基数是16.
注意:为了区分不同的进位制,常在数字 的右下脚标明基数,. 如111001(2)表示二进制数,34(5)表示5进制数. 十进制数一般不标注基数.
出b的值;否则,返回第三步.
思考4:按照上述思路,把k进制数
a = anan- 1 L a2a1(k) 化为十进制数b的算法
步骤如何设计?
第一步,输入a,k和n的值. 第二步,令b=0,i=1.
第三步,b = b + ai ? k i- 1 ,i=i+1.
第四步,判断i>n 是否成立.若是,则 输出b的值;否则,返回第三步.
思考4:十进制数4528表示的数可以写成 4×103+5×102+2×101+8×100,依此类 比,二进制数110011(2),八进制数 7342(8)分别可以写成什么式子?
11001122+1×21+1×20
7342(8)=7×83+3×82+4×81+2×80.
b=0
b=0

高中数学人教A版必修3课件:1.3 算法案例

高中数学人教A版必修3课件:1.3 算法案例

1.3 算法案例
题型1 辗转相除法与更相减损术
4.分别用辗转相除法和更相减损术求36和80的最大公约数.

辗转相除法:
80=36×2+8,36=8×4+4,8=4×2.
故36和80的最大公约数是4.
更相减损术:
80-36=44,44-36=8,36-8=28,28-8=20,
20-8=12,12-8=4,8-4=4.
解析
111÷2=55……1,55÷2=27……1,27÷2=13……1,13÷2=6……1, 6÷2=3……0,3÷2=1……1,1÷2=0……1, 故111(10)=1101111(2).故选C.
1.3 算法案例
题型3 进位制
11.把十进制数189化为四进制数,则末位数字是( B )
A.0
B.1
1.3 算法案例
刷基础
题型3 进位制
13.十六进制数与十进制数的对应如下表:
十 六 进 1 2 3 4 5 6 7 8 9 10 A B C D E F 制 数 十 进 制 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 数
例如:A+B=11+12=16+7=F+7=17(16),所以A+B的值用十六进制表示就等于17(16).
f(x)=anxn+an-1xn-1+…+a1x+a0的具体函数值,运用常规方法计算出结果最多需要n次加法和
n(n 2
1)
次乘法,而运用秦九韶算法由内而外逐层计算一次多项式的值的算法至多需要n次加法和n次乘法.对于计
算机来说,做一次乘法运算所用的时间比做一次加法运算要长得多,所以此算法极大地缩短了CPU运算的
A.2
B.3
C.4
D.5

高中数学人教A版必修3第一章1.3算法案例课件

高中数学人教A版必修3第一章1.3算法案例课件


9- 3= 6
6 - 3 = 3 减数与差相等
3×2=6
78与36的最大公约数为6.
更相减损术
问题6.根据更相减损术的过程,设计求两个正整数m,n最 大公约数的算法,需要用到什么逻辑结构?为什么?
第一步:任意给定两个正整 算法分析:
数,判断它们是否都是偶数。第一步,给定两个正整数m,n(m>n).
更相减损术
例2. 用更相减损术求78与36的最大公约数.
解: 78与36都是偶数
“可半”
78 ÷ 2 = 39 36 ÷ 2 = 18
“可半者半之”
除 完
39 - 18 = 21 大减小 21 - 18 = 3

18 - 3 = 15

15 - 3 = 12
“更相减损”(辗转相减)

12 - 3 = 9
2 18 30 3 9 15 35
18与30的最大公约数为2 3 6 .
问题1. 求8251与6105的最大公约数. 可以使用短除法吗?
困难:两数比较大、公约数不易视察。 (辗转相除法、更相减损术)
知问
思考1:辗转相除法与更相减损术可以用来解 决什么问题? 可以解决求两个正整数最大公约数的任何问题。
《九章算术》——更相减损术
“可半者半之,不可半者,副置分母、子之数,以少 减多,更相减损,求其等也,以等数约之。”
《九章算术》
刘徽
《九章算术》其作者已不可 考,现今流传的大多是在三 国时期刘徽为《九章》所作 的注本。它是中国古代第一 部数学专著,系统总结了战 国、秦、汉时期的数学成绩, 收录了246个数学问题及其 解法,是当时世界上最简练 有效的应用数学,它的出现 标志中国古代数学形成了完 整的体系。

人教a版必修三:《1.3算法案例(1)》ppt课件(322页)

人教a版必修三:《1.3算法案例(1)》ppt课件(322页)

明目标、知重点
填要点、记疑点
主目录
探要点、究所然
当堂测、查疑缺
探要点、究所然
§1.3(一)
探究点二:更相减损术
思考 2 (1)用更相减损术可以求两个正整数 m,n 的最大公约数,那么用什么逻辑结 构来构造算法?其算法步骤如何设计?
答 (1)用循环结构设计算法,算法如下:
第一步,任意给定两个正整数m,n(m>n). 第二步,计算 m-n 所得的差 k. 第三步,比较n与k的大小,其中大者用m表示,小者用n表示. 第四步,若m=n,则m,n的最大公约数等于m;否则,返回第二步.
第一章 算法初步
§1.3 算法案例(一)
本节知识目录
§1.3(一)
明目标、知重点
算法 案例 (一)
填要点、记疑点
探究点一 探究点二 探究点三
辗转相除法 更相减损术 秦九韶算法的基本思想
探要点、究所然
当堂测、查疑缺
明目标、知重点
填要点、记疑点
主目录
探要点、究所然
当堂测、查疑缺
明目标、知重点
§1.3(一)
明目标、知重点
填要点、记疑点
主目录
探要点、究所然
当堂测、查疑缺
探要点、究所然
§1.3(一)
探究点二:更相减损术
(2)该算法的程序框图如何表示?该程序框图对应的程序如何表述?
答 程序框图: 程序:
INPUT m,n WHILE m< >n k=m-n IF n>k THEN m=n n=k ELSE m=k END IF WEND PRINT m END
明目标、知重点 填要点、记疑点
主目录
探要点、究所然
当堂测、查疑缺

1.3算法案例(适用)ppt

1.3算法案例(适用)ppt
的方法呢?
2021/3/2
秦九韶算法的基本思想 思考1:对于多项式f(x)=x5+x4+x3+x2+x+1,求
f(5)的值. 分析:把5代入多项式,若先计算各项的值,
2021/3/2
思考4:辗转相除直到何时结束? 主要运用的是哪种算法结构?
辗转相除法是一个反复执行直到余数等于0停止的步骤, 这实际上是一个循环结构
辗转相除法求两个数的最大公约数,其算法可以描述如下: ① 输入两个正整数m和n; ② 求余数r:计算m除以n,将所得余数存放到变量r中; ③更新被除数和余数:m=n,n=r。
第二步:以较大的数减去较小的数,接着把差 与较小的数比较,并以大数减小数.继续这个操作, 直到所得的数相等为止,则这个等数或这个数与约 简的数的乘积就是所求的最大公约数.
2021/3/2
例1:用更相减损术求98与63的最大公约数.
因为63不是偶数,所以98-源自3=35,63-35=28,
35-28=7,
2021/3/2
思考3:注意到8251=6105×1+2146,那么8251 与6105这两个数的公约数和6105与2146的公约数有 什么关系?
我们发现6105=2146×2+1813,同理,6105与 2146的公约数和2146与1813的公约数相等.
思考4:重复上述操作,你能得到8251与6105这 两个数的最大公约数吗? 8251=6105×1+2146, 1813=333×5+148,
得:18和24最大公约数是:2×3=6
短除法
想一想,如何求8251与6105的最大公约数?
2021/3/2
思考2:对于8251与6105这两个数,它们的最大 公约数是多少?你是怎样得到的?

人教版高中数学必修三1.3.3算法案例(进位制)教学课件(共17张PPT)

人教版高中数学必修三1.3.3算法案例(进位制)教学课件(共17张PPT)
其它进位制的数又是如何的呢?
二、 二进制
(1)二进制的表示方法
二进制是用0、1两个数字来描述的.如 1(120)0为1了区分不同的进位制,常在数的右下角标明基数,
十进制一般不标注基数.
区分的写法:11001(2)或者
1(1101001(02)1=)21? 24 1? 23 0? 22 0? 21 1? 20
2= 2× 1+0
1= 2× 0+1
89=1×26+0×25+1×24+1×23+0×22+0×21+1×20 所以:89=1011001(2)
五、十进制转换为其它进制 例4:把89化为五进制数。
解:根据除k取余法 以5作为除数,相应的除法算式为:
5 89 5 17
53 0
所以,89=324(5)
八进制呢?如7342(8)
k进制呢? anan-1an-2…a1(k)?
三、二进制与十进制的转换
1、二进制数转化为十进制数
例1:将二进制数110011(2)化成十进制数。 解: 根据进位制的定义可知
110011(2) = 1? 25 1? 24 0? 23 0? 22 1? 21 1? 20
= 1? 32 1? 16 1? 2 1
• 2.十进制与k进制之间转换的方法;
先把这个k进制数写成用各位上的数字 与k的幂的乘积之和的形式,再按照十进 制数的运算规则计算出结果。
1、3 算法案例
(第三课时)
郾城高中高一数学组
一、教学目标: • 1.了解进位制的定义和常见的进位制。 • 2.理解算法与进位制的关系。 • 3.熟练掌握各种进位制之间的转化。
二、教学重难点: • 重点:算法与进位制的关系和各种进位制之
间的转化。 • 难点:算法与进位制的关系、并熟练会用算

1.3 算法案例 课件(共32张PPT)解读

1.3 算法案例 课件(共32张PPT)解读
第一章
算法初步
1.3 算法案例
第一章
算法初步
学习导航
学习目标 重点难点 ― → 算法思想 ― ― → 算法用途 案例 ― 重点:引导学生理解算法思想. 难点:学生对算法应用的掌握.
体会 了解
栏目 导引
第一章
算法初步
新知初探思维启动
1.辗转相除法
所谓辗转相除法,就是对于任意给定的两个正整数,用较大
2 .两种非十进制的不同进制之间相互转化时,可以把十进 制作为转化的中间桥梁.
栏目 导引
第一章
算法初步
精彩推荐典例展示
易错警示 利用秦九韶算法求值的易错点
例4 A.320 C.-320 【常见错误】 利用秦九韶算法求多项式 f(x) = x6 - 5x5 + 6x4 + x2 +
3x+2,当x=-2时的值为(
③十六进制:a:使用0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,
F这十六个不同的数码,其中A,B,C,D,E,F分别代表 十进制中的10,11,12,13,14,15;b:满十六进一,如F+1=2+ E=10.
栏目 导引
第一章
算法初步
(3)不同进位制数之间的转化
①k进制数转化为十进制数 把k进制数转化为十进制数,写成不同位上数字与基数幂的 乘积之和即可(简称幂积求和),即anan-1…a1a0(k)=an×kn+ an-1×kn-1+…+a1×k+a0.例如,将二进制数11 001(2)化为
f(x)=(anxn-1+an-1xn-2+…+a1)x+a0
=((anxn-2+an-1xn-3+…+a2)x+a1)x+a0 =…
栏目 导引
第一章
算法初步
首先计算最内层括号内一次多项式的值,即v1=anx+an-1, 然后由内向外逐层计算一次多项式的值.这样,求n次多项式

1.3算法案例 课件-高一数学人教A版必修3

1.3算法案例 课件-高一数学人教A版必修3
f (x) 4x5 2x4 3.5x3 2.6x2 1.7x 0.8
用秦九韶算法求这个多项式当x=5时的值。
解:根据秦九韶算法,把多项式改写成如下 形式:
f (x) ((((4x 2)x 3.5)x 2.6)x 1.7)x 0.8
按照从内到外的顺序,依次计算一次多项式当 x=5时的值:
WHILE d<>n
IF d>n THEN m=d
ELSE m=n
n=d
END IF d=m-n WEND d=2^k*d
PRINT d
END
问题2:怎样求多项式 f (x) x5 x4 x3 x2 x 1当x=5 的值呢?
方法1:把5代入多项式,计算各项的值,然后把它们加 起来。这时共做了1+2+3+4=10次乘法运算,5 次加法运算。
例1:用更相减损术求98与63的最大公约数。
解:由于63不是偶数,把98和63以大数减小数, 并辗转相减得,如图所示:
98-63=35 63-35=28 35-28=7 28-7=21 21-7=14 14-7=7
所以,98和63的最大公约数等于7。
思考:把更相减损术与辗转相除法比较,你有什么
发现?你能根据更相减损术设计程序,求两个正数的 最大公约数吗?
v1 an x an1
然后由内向外逐层计算一次多项式的值,即
v2 v1 x an2 ,
v3 v2 x an3 ,
vn vn1 x a0 ,
这样,求n次多项式f(x)的值就转化为求n个一次多项 式的值。
上述方法称为秦九韶算法。直到今天, 这种算法仍是 多项式求值比较先进的算法。
例2、已知一个5次多项式为
⑤十进制化k进制

2014年人教A版必修三课件 1.3 算法案例

2014年人教A版必修三课件 1.3 算法案例
开始
输入正数m,n
m>n? 是 m=m-n 否 m=n? 是 输出m 结束
否 n=n-m
案例2 秦九韶算法 问题2. 下面是求多项式 f(x)=x5+x4+x3+x2+x+1 的 值的两种算法, 你认为哪种算法要快一些? 为什么? 算法 1: 直接将 x 的值代入多项式计算; 算法 2: 将多项式变形成 f(x)=((((x+1)x+1)x+1)x+1)x+1. 算法 1 要做 10 次乘法和 5 次加法. 算法 2 只做 4 次乘法和 5 次加法. 计算机做一次乘法用的时间比做一次加法所用 的时间长得多. 对于 n 次多项式的求值运算, 我国南宋时期的 秦九韶有如下的算法:
5. 什么是秦九韶算法? 它的特点是什么? 6. 你能写出秦九韶算法的程序吗?
Hale Waihona Puke 案例1 辗转相除法与更相减损术 问题1. 你能求两个数的最大公约数吗? 看下面 一列等式, 请问: 37 是 2146 与 1813 的公约数吗? 2146 1813 余 333, 2146 = 1813 1 +333, 有37的约数, 1813 333 余 148, 1813 = 333 5 +148, 有37的约数, 333 148 余 37, 333 = 148 2 +37, 有37的约数, 148 37 余 0. 有37的约数, 148 = 37 4. 求两个数的最大公约数的算法步骤: (1) 大数除以小数取余数; (2) 较小的数与余数又进行大数除以小数取余数; 如此重复进行, 直到余数为 0. 余数为 0 时的除数就是最大公约数. 这叫辗转相除法, 又叫欧几里得算法.
否则, 返回第二步进入循环.
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

辗转相除法是一个反复执行直到余数等
于0停止的步骤,这实际上是一个循环结构。
用程序框图表示出右边的过程
m=n×q+r
8251=6105×1+2146
r=m MOD n m=n n=r
r=0?


6105=2146×2+1813 2146=1813×1+333 1813=333×5+148
333=148×2+37 148=37×4+0
算法1:因为f(x) =x5+x4+x3+x2+x+1 所以f(5)=55+54+53+52+5+1
=3125+625+125+25+5+1
= 3906 共做了1+2+3+4=10次乘法运算,5次加法运算
算法2:
f(5)=55+54+53+52+5+1
=5×(54+53+52+5+1 ) +1 =5×(5×(53+52+5 +1 )+1 ) +1 =5×(5×(5×(52+5 +1) +1 ) +1 ) +1 =5×(5×(5×(5 ×(5 +1) +1 )+1)+1) +1
f (x) ((((5x 2)x 3.5)x 2.6)x 1.7)x 0.8
按由里到外的顺序,依此计算一次多项式当x = 5时的值:
v0 5
v1 55 2 27
v2 275 3.5 138.5 v3 138.55 2.6 689.9
v4 689.95 1.7 3451.2
1,2,, n)
v=a5
这是一个在秦九韶算法中 反复执行的步骤,因此可 用循环结构来实现。
n≤5?
Y
输出v
n=n+1 v=vx0+a5-n N
结束
练习、已知多项式 f(x)=x5+5x4+10x3+10x2+5x+1
v 与v 用秦九韶算法求这个多项式当x=-2时的值
的过程中,求
14
算法案例(3)
完整的过程
例2 用辗转相除法求225和135的最大公约数
8251=6105×1+2146 225=135×1+90
6105=2146×2+1813 135=90×1+45
2146=1813×1+333 90=45×2
显然45是90和45的最大公约数,也就是
1813=333×5+148 225和135的最大公约数
89=1011001(2)
练习 将下面的十进制数化为二进制数?
(1)10
(2)20
3、十进制转换为其它进制
值然,后即,由内到外逐v1层计an算x 一a次n多1 项式的值,即
v2 v1x an2
v3 v2 x an3

vn vn1x a0
最后的一 项是什么?
这种将求一个n次多项式f(x)的值转化成求n 个一次多项式的值的方法,称为秦九韶算法。
算法步骤:
第一步:输入多项式次数n、最高次项 的系数an和x的值. 第二步:将v的值初始化为an,将i的值 初始化为1.
算法1因:为f(x) =x5+x4+x3+x2+x+1
所以f(5)=55+54+53+52+5+1
算法2:
=3125+625+125+25+5+1 = 3906
f(5)=55+54+53+52+5+1
=5×(54+53+52+5+1 ) +1 =5×(5×(53+52+5 +1 )+1 ) +1 =5×(5×(5×(52+5 +1) +1 ) +1 ) +1 =5×(5×(5×(5 ×(5 +1) +1 )+1)+1) +1
132 116 1 2 1
51
所以,110011(2)=51.
练习 将下面的二进制数化为十进制数?
(1)11
(2)110
2、十进制转换为二进制
例2 把89化为二进制数
注意:
2 89 2 44 2 22
2 11 25 22
21 0
余数
1 0 0 1 1 0 1
1.最后一步商为0,
2.将上式各步所得的余数从下到上排列,得到:
古人有半斤八两之说,就是十六进制与十 进制的转换.
比如时间和角度的单位用六十进位制, 计算 “一打”数值时是12进制的。
电子计算机用的是二进制
3、我们了解十进制吗?所谓的十进制,它是如何构成的?
十进制由两个部分构成 十进制:“满十进一”
第一、它有0~9十个数字;
(用10个数字来记数,称基数为10) 第二、它有“数位”,即从右往左为个位、 十位、百位、千位等等。 例如:3721 表示有:1个1,2个十, 7个百即7个10的平 方,3个千即3个10的立方
最大公约数. 12
(2)算法步骤
第一步:输入两个正整数a,b(a>b); 第二步:若a不等于b ,则执行第三步;否则转 到第五步; 第三步:把a-b的差赋予r; 第四步:如果b>r, 那么把b赋给a,把r赋给b;否 则把r赋给a,执行第二步; 第五步:输出最大公约数b.
(3)程序框图 (4)程序 INPUT “a,b=“;a,b WHILE a<>b r=a-b IF b>r THEN a=b b=r ELSE a=r END IF WEND PRINT b
算 法 案 例(2)
1、求两个数的最大公约数的两种方法分别是 ( )和( )。
2、两个数21672,8127的最大公约数是 ( ) A、2709 B、2606 C、2703 D、2706
案例2、秦九韶算法
怎样求多项式f(x)=x5+x4+x3+x2+x+1当 x=5时的值呢?
计算多项式f(x) =x5+x4+x3+x2 +x+1当x = 5的值
2、更相减损术
(1)算理:所谓更相减损术,就是对于 给定的两个数,用较大的数减去较小的数, 然后将差和较小的数构成新的一对数,再 用较大的数减去较小的数,反复执行此步 骤直到差数和较小的数相等,此时相等的 两数便为原来两个数的最大公约数。
例3 用更相减损术求98与63的最大公约数
解:由于63不是偶数,把98和63以大数减 小数,并辗转相减 98-63=35 63-35=28 所以,98和63的 35-28=7 最大公约数等于7 28-7=21 21-7=21 14-7=7 练习:用更相减损术求两个正数84与72的
你从中看到了 怎样的规律? 怎么用程序框 图来描述呢?
v5 3451.25 0.8 17255.2
所以,当x = 5时,多项式的值等于17255.2
程序框图:
开始
输入f(x)的系数: a0,a1,a2,a3,a4a5
输入x0
v0

a n
n=1
vk

v x a (k
k 1
nk
八进制呢?如7342(8) k进制呢? anan-1an-2…a1(k)?
三、二进制与十进制的转换
1、二进制数转化为十进制数
例1 将二进制数110011(2)化成十进制数 解:根据进位制的定义可知
110011(2) 1 25 1 24 0 23 0 22 1 21 1 20
算 法 案 例(1)
1. 回顾算法的三种表述: 自然语言 程序框图(三种逻辑结构) 程序语言(五种基本语句)
2. 思考:
小学学过的求两个数最大公约数的方法
先用两个公有的质因数连续去除,一直 除到所得的商是互质数为止,然后把所 有的除数连乘起来.
辗转相除法(欧几里得算法) 观察用辗转相除法求8251和6105的最 大公约数的过程 第一步 用两数中较大的数除以较小的数,
结果是什么?
((an xn2 an1xn3 a2 )x a1)x a0
((an x an1)x an2 )x a1)x a0
f (x) ((an x an1)x an2 )x a1)x a0
要求多项式的值,应该先算最内层的一次多项式的
求得商和余数8251=6105×1+2146
结论:8251和6105的公约数就是6105 和2146的公约数,求8251和6105的最 大公约数,只要求出6105和2146的公约 数就可以了。
第二步 对6105和2146重复第一步的做法 6105=2146×2+1813同理6105和2146的最 大公约数也是2146和1813的最大公约数。
(2)算法步骤
第一步:输入两个正整数m,n(m>n). 第二步:计算m除以n所得的余数r. 第三步:m=n,n=r. 第四步:若r=0,则m,n的最大公约数等于m;
否则转到第二步. 第五步:输出最大公约数m.
(3)程序框图 (4)程序 开始
INPUT“m,n=“;m,n
输入m,n
DO
r=m MOD n
333=148×2+37
思考1:从上面的两个例子可以看出计算 的规律是什么?
148=37×4+0 显然37是148和37的最大公 约数,也就是8251和6105 的最大公约数
1、辗转相除法(欧几里得算法)
(1)算理:所谓辗转相除法,就是对于给定 的两个数,用较大的数除以较小的数。若余 数不为零,则将余数和较小的数构成新的一 对数,继续上面的除法,直到大数被小数除 尽,则这时较小的数就是原来两个数的最大 公约数。
i<=n? N
输出v
结束
i=i+1
v=vx+an-i
输入an-i
相关文档
最新文档