小編給大家分享一下java求大公約數(shù)的方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
java怎么求大公約數(shù)?
大公約數(shù)
①定義
幾個(gè)自然數(shù)公有的約數(shù),叫做這幾個(gè)數(shù)的公約數(shù);其中大的一個(gè),叫做這幾個(gè)數(shù)的大公約數(shù)。
②輾轉(zhuǎn)相除法
又稱“歐幾里得算法”,是求大公約數(shù)的算法
求兩個(gè)數(shù)的大公約數(shù):如果m > n,令余數(shù)remainder = m%n,如果余數(shù)不為0,則令m = n, n = remainder,再次remainder = m%n,直到remainder = 0,此時(shí)n就是大公約數(shù)。
求多個(gè)數(shù)的大公約數(shù):先求出其中兩個(gè)數(shù)的大公約數(shù),再求這個(gè)大公約數(shù)與第三個(gè)數(shù)的大公約數(shù),依次求下去,直到最后一個(gè)為止,最后所得的那個(gè)大公約數(shù),就是所求的幾個(gè)數(shù)的大公約數(shù)
③代碼實(shí)現(xiàn)
public static int maxCommonDivisor(int m, int n) { if (m < n) { // 保證被除數(shù)大于除數(shù) int temp = m; m = n; n = temp; } while (m % n != 0) { // 在余數(shù)不能為0時(shí),進(jìn)行循環(huán) int temp = m % n; m = n; n = temp; } return n; // 返回大公約數(shù) }
以上是java求大公約數(shù)的方法的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!