有一种数叫做最大公约数

       今日,不知何时来了兴趣,突然想翻一翻大一学生的Java书籍。书写得还可以,唯独少了那一份心血澎湃,多了一份审视的眼光。

       在封装的某个章节里,突然遇到关于1/3+1/3等有理数的运算问题。遇到这类的问题,最近往往都不是追求算法的目标,而是以设计者的角度重新看待问题。“横看成岭侧成峰”,每个阶段,每一种阅历,都将导致对事务的看法都所不一,所以我决定从所谓的封装角度去看待它,设计它,让它得以优化,以满足对一个设计者的独特强迫症。

       有理数的运算,默认都是将运算的结果作为近似小数进行表示,往往这种做法就不能满足我们的需求,以有理数的存在正是我们想要的结果。java没有这样的类库,那我们就开始创造哈,毕竟创造才是我们的动力。于是乎,敲敲想想只际,写写停停的过程中,利用到了最大公约数的知识,想想自己隐隐约约有这方面的知识,但是并不是很清楚。趁着这个需求,顺便复习一下以前的知识,正所谓“温故而知新,可以为师矣”。

     通过复习,感觉对最大公约数的知识有了更清楚的理解和认知,虽然称不上“可以为师矣”的程度,但是还是可以让自己受益匪浅。下面是是我通过学习后的总结,希望能帮助你们。thank,goodness...

1、最大公约数,是指若干个约数中最大的一个,公约数是指N个数中每一个数都有相同的因子,这些因子就称为公约数。例如6/3,6的因子有1,2,3,6,3的因子有1,3,所以他们共有的因子是1,3,其中,最大的就是3!

a能被b整除,是说a是被除数,可以被c,d或者其他书的整除,所以它是被除数a;而b是除数,可以除很多数的。表达形式为:a/b,b是a,b中的最大公约数,a是最小公倍数!换而言之,b能整除a,a能被b整除是一样的。

关于求解最大公约数的办法有:

(1)质因数分解法:把每一个数分解成质因数,然后再把共有的质因子全部相乘,即可得到最大公约数。

         例如:(20,60)的最大公约数为20,即每个数全部分解成质因子

                 (1) 20 = 2*2*5 ;(2)60=2*2*3*5

共有的因子为:2,2,5,将所有因子全部相乘,2*2*5=20,所以20是他们的最大公约数。

(2)短除法

(3)辗转相除法:1.小数放前面,方法:先比较两个数的大小,如果第一个数要比第二个数要小,就交换他们。                                   否则不用交换;

                               2.经过第一步的处理后,确保第一个数要比第二个数要大,于是就将第一个数模第二个数,末                                   后的结果如果不为零,那么进行辗转,即把b当成a,余数当成b,然后再模,直至零为止。

        注意: 交换辗转相除法是求两个自然数的最大公约数的一种方法,也叫欧几里德算法。

        例如 :求(319,377)

                    ∵ 319÷377=0(余319)

                    ∴(319,377)=(377,319);

                    ∵ 377÷319=1(余58)

                   ∴(377,319)=(319,58);

                   ∵ 319÷58=5(余29)

                  ∴ (319,58)=(58,29);

                 ∵ 58÷29=2(余0)

                 ∴ (58,29)= 29;

                ∴ (319,377)=29。


代码的描述如下:

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,980评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,178评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,868评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,498评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,492评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,521评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,910评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,569评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,793评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,559评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,639评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,342评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,931评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,904评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,144评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,833评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,350评论 2 342

推荐阅读更多精彩内容