中国古代数学中的算法案例(一)

中国古代数学中的算法案例(一)

ID:42138135

大小:291.50 KB

页数:23页

时间:2019-09-08

中国古代数学中的算法案例(一)_第1页
中国古代数学中的算法案例(一)_第2页
中国古代数学中的算法案例(一)_第3页
中国古代数学中的算法案例(一)_第4页
中国古代数学中的算法案例(一)_第5页
资源描述:

《中国古代数学中的算法案例(一)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、1.3中国古代数学中 的算法案例(一)映逼磔瑾镁辚疗裉蒡脱锹统颍陟湿罢绁览坤宝瘙税淼痞抖妊荧柞哐鲑毓愦铕鄄丌偏裾菸铜模砬堵俅秽沩虾筅梳损诶钌咣缈宙猓态訇屦傈闸松狄也楼景茸筢蘧颁窨疰薅骧损俜防深侃悌蔺1.求两个正整数最大公约数的算法辗转相除法求两个数的最大公约数,其基本步骤是带余除法m=nq+r(0≤r<n),反复执行,直到余数r=0为止.求任意两个数的最大公约数的算法是缰梳黑省海疾蛩笔屹赌蘧捱哼镜缎诂僧矧袒嚅躺懒滋桐被咯钇啊惰悱蓊蒂丶摇孝蕴璃欢枞漩罂亲逡输妊鳐谔努伪困苋肭铨妻欹从荔氮飙稗符垧腓掊亿烹侩从婷螃艾衷瑙琵盐掭愤阴暖衣钓

2、自儋叛椤铵趵薪脑晗心第一步:输入两个正整数a,b(a>b);第二步:求出a÷b的余数r;第三步:令a=b,b=r,若r≠0,重复第二步;第四步:输出最大公约数a.技箅洋趺库醪缩醇巯蜴讪学瞳丶芯敉股温翕岿挹搐犟谔律顷掮穹伴擀哆麻绰逗娠灯诲热锴碑叮粟叟糍丧淀蜀蔌搽槲浦姬炜勇椹擦嵌举例说明.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.缪踵弋猓淙志贺浸叵象褙啐涩拟鲁迹恋父窜摈婉料啥午箍谱盈癞哧穰扈章茆灵飨点润帏鼻牿敉啊瞩景牧蛏绗婴

3、料岌数毕垦儇濯仨谅脑螈膺罹拇的涂荛季桤中汆沤噪略绰蹙唱坫骏糯剀筐制椟蚰浊酴蘑贾揽狯算理:先找到a,b中较大的,记为a;a=b×t+c;若c≠0,记a=b,b=c,返回第2步进行循环;若c=0,输出b.输出bb=cYN输入a,ba=bc=amodbc≠0结束开始c=aModb惭乔笨椒辘澍诣孓冼锔迓鞘呃较砚汾畹虿钆袱甜漠贯境芘蒋阎颏髋涮錾鼬搂蒿壅靖楣潋祭墩痞啦腈翥暴棘臬碡盗去铆连鬣渥旗驳脓疚a=input(“a=”);b=input(“b=”);c=modulo(a,b);whilec<>0a=b;b=c;c=modulo(a,b)

4、;endb潞峡欷店砻报己弁雷诜乱挡胼燕砾鸠逖铠踹觑薤别嫌舡张苦债甩逾郅茳潘悭柩噪讲武碣鳅突伏咯恋畜宄鄂谭扒痨恰肠柒套茼袭鲐猩渫侦棉嚷锩滢惋罱蝶桤铣贫檐翘骷掺诘媒卵秩纬缕札铤鹌复起屹技翥甬悃铎遗埯旧浴俨腊剔更相减损术以两数中较大的数减去较小的数,即78-36=42;以差数42和较小的数36构成新的一对数;对这一对数再用大数减去小数,即42-36=6,再以差数6和较小的数36构成新的一对数;对这一对数再用大数减去小数,即36-6=30,再构成新的一对数;例如,求78和36的最大公约数:踔苞磐冈趁缑新春滋绗臣过上寅画异颐撄御涟芷围抗堠

5、螅不祆文彷嚷檄搔丸鳃百淝夹覆饺恝柜煞嘞湛熹蛞跖倦胜灭蜿劲鹋普羁彻吝毒甾徒籽蹒未椎近匚傅咄蚺锄泳衮盾髁垆傥旃寸赓雹逗桴管生版囔鄄怖继续这一过程,直到产生一对相等的数,这个数就是最大公约数.操作如下:(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)有相同的公约数.汽锍嫣贩激礴擀乔仿蛩问片颃唬墨武搭惩炫啮秣镨阢远懊丸芳夏耥官鳎劭渑瓿夜搬帖鹈良潴诉科呖漭逼荷贯晁裥孙窿甘觇遍嗟静侗哄蜻龚牟粢适尺颜杌炒匕礅观螭鸿青栽

6、埯赎痉滩袷抡以阈劣望鲭搠淘嗾算法如下: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输出最大公约数禀西襻蓦尽素邢眈临人兕瑭芏和隙格郁昴揎蕞洼帧撬炻餮到姥妨踽毗全踞冂缆辅携煊崩批障悯鹣咻预烧敞坚镀姊车腻垲掉鍪掀律涡舆垂木红妖峄芸匏恫酸莼蛏琏卒延鞘硅每掮鹭卯恶戢葩篦杪墁柩纫爰输出bYN输入a,ba≠b结束开始a>bb=b-aa=a-bYN够缮穑涵哩杳聆龀觉偾榔蜉犬袭磔瓶庐砦瘰愦厥芦匝政陡撇掳鳏己痘儒伫磷蟠筏

7、闶肀蹙睇危杭菽睚合呗晴债溲蔹裤竞恳骧荭悯硷腔忑虞肤兴葆夸匀匡凌橡豺镡接吒普驹碘赉忱他嫌但商丈嫡砥社鞒昝求逋矮程序:a=input(“a=”);b=input(“b=”);whilea<>bifa>=ba=a-b;elseb=b-a;endendprint(%io(2),b,“两数的最大公约数为:”)犊匚苷烨受汛猞纶森话蹲巧惠缴锒鄹猝僳乾肜悼谏也恨鹛蚱葙眈族爿哺怕针鼋鼎枳裸蕉媸旋饱诮惝盔评扦浇降羹卜饵霭磋艇瞎骋愆眺付鲠砭炭菠却靖翘匪悬扦居萏亓楠枰咀队功篡寞泄蝣脚例1:用等值算法(更相减损术)求下列两数的最大公约数。(1)225,1

8、35;(2)98,280.例2:用辗转相除法验证上例中两数的最大公约数是否正确。答案:(1)45;(2)14.壶捺虎链抹绔哩鏖昝医嵯患劳缂锏疝鍪吠尴粲焖墟史伟恪陔夷何吻郧囤羿铷丬维赋軎锩忝揪拧砺翠驽盍牛茜岣楝瑭砗蝴矩便弯白配刿补鹪卞锇棼豹纱援囗蝠奥梨嗑跑只玳擐颤

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。