新课标人教B必修三1-3中国古代数学中的算法案例(一) 新课标人教B版 .ppt
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课堂练习
2.写出图示流程图所表达算法的伪代码,并求出最后输 出的n的值。 10 20 30 40 50 60 70 80 m←147 n←84 r←mod(m,n) If r=0 Then Goto 70 m←n,n←r Goto 30 Print n End
n的值为21
课堂练习
3.用更相减损术求两个正数84与72的最大公约数.
S6,S12,S24,S48,…,S2m.
第三,S2m近似等于圆面积。
下面的关键是找出正n边形的面积与正2n 边形的面积之间的关系,以便递推。 设圆的半径为1,正n边形 的边长AB为xn,弦心距 OG为hn;面积为Sn,根据
勾股定理,得:h
n
xn 1 , 2
2
2
2 xn x2 n 1 hn 2
举例说明. m=90,n=36, m=2n+18,r=18. 令m=36, n=18. 又有36=18×2, 即m=2n, 此时r=0. 令m=18,n=0. 故最大公约数为18.
开始
算理: 记为a;
a=b×t+c; 若c≠0,记a=b, b=c,返 回第2步进行循环; 若c=0,输出b.
输入a,b
结束
程序: a=input(“a=”); b=input(“b=”); while a<>b if a>=b a=a-b; else b=b-a; end end print(%io(2), b, “两数的最大公约数
例1 :用等值算法(更相减损术)求下列 两数的最大公约数。 (1)225,135; 答案: (1) 45; (2)98,280. (2) 14.
先找到a,b中较大的, c = a Mod b
c=a mod b b=c a=b c≠0 N 输出b 结束 Y
a=input(“a=”); b=input(“b=”); c=modulo(a,b); while c<>0 a=b; b=c; c=modulo(a,b); end b
更相减损术 例如,求78和36的最大公约数: 以两数中较大的数减去较小的数,即78 -36=42;以差数42和较小的数36构成新 的一对数; 对这一对数再用大数减去小数,即42 -36=6,再以差数6和较小的数36构成新 的一对数;
对这一对数再用大数减去小数,即36- 6=30,再构成新的一对数;
继续这一过程,直到产生一对相等的数, 这个数就是最大公约数. 操作如下: (78,36) → (42,36) → (6,36) → (6,30) → (6,24) → (6,18) → (6,12) → (6,6). 理论依据: 由a-b=r → a=b+r,得(a, b)与(b, r)有相 同的公约数.
1.3中国古代数学中的算法案例(一)
1. 求两个正整数最大公约数的算法 辗转相除法
求两个数的最大公约数,其基本步骤 是带余除法m=nq+r(0≤r<n), 反复执行,直到余数r=0为止.
求任意两个数的最大公约数的算法是
第一步:输入两个 正整数a,b(a>b); 第二步:求出a÷b 的余数r; 第三步:令a=b, b=r,若r≠0,重复第二 步; 第四步:输出最大 公约数a.
数学运用
例1、两个正整数的最小公倍数,实际上就是这两数 乘积除以它们的最大公约数,试写出求正整数a,b最小 公倍数的程序。 a=input(“a=”);
b=input(“b=”); c=modulo(a, b); d=a*b; While c<>0 a=b; b=c; c=modulo(a,b); End print(%io(2), d/b)
算法如下:
S1 输入两个正数a, b (a>b);
S2 如果a≠b,则执行S3,否则转到S5; S3 将a-b的值赋予r; S4 若b>r,则把b赋予a,把r赋予b,否则 把r赋予a,重新执行S2; S5 输出最大公约数
开始 输入a,b
a=a-bBaidu NhomakorabeaY a≠b N 输出b Y a> b
b=b-a N
例2:用辗转相除法验证上例中两数的最 大公约数是否正确。
2.割圆术
魏晋时期数学家刘徽,“割之弥细,所 失弥少,割之又割,以至于不可割,则与 圆合体而无所失矣”. 即从圆内接正六边形开始,让边数逐次 加倍,逐个算出这些内接正多边形的面积, 从而得到一系列逐次递增的数值。
第一,从半径为1的圆内接正六边形开始, 计算它的面积S6; 第二,逐步加倍圆内接正多边形的边数,分 别计算圆内接正十二边形,正二十四边形, 正四十八边形,…的面积,到一定的边数 (设为2m)为止,得到一列递增的数,
Read a,b If a/b=Int (a/b) Then goto 70 ca-Int(a/b)×b a b b c Goto 20 Print b B.求a,b的最大公约数 D.求b除以a的余数
A.求a,b的最小公倍数 C.求a被b整除的商
分析:解题关键就是:a-int(a/b)×b=mod(a,b)
数学运用
例2、用更相减损术求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
课堂练习
1.下面一段伪代码的目的是( B )
10 20 30 40 50 60 70
S24≈3.105828;……
程序:
n=6; x=1; s=6*sqrt(3)/4; for i=1 : 1 : 5 h=sqrt(1-(x/2)^2);
s=s+n*x*(1-h)/2; n=2*n; x=sqrt((x/2)^2+(1- h)^2); end print(%io(2), n, s)
(n 6)
容易知道x6=1,
正2n边形的面积等于正n 边形的面积加上n个等腰三 角形的面积,即 1 S 2 n S n n xn (1 hn ) (n 6) 2
xn 2 2 正2n边形的边长为 x2n ( ) (1 hn ) 2
3 于是由 S6 6 4
求得S12=3;