基本演算法 求解最大公約數

2021-08-11 07:30:42 字數 549 閱讀 6365

什麼是最大公約數?

指兩個或多個

整數共有

約數中最大的乙個。

分析:

要求求出正整數m,n(m>n)的最大公約數,最大公約數的最大可能為n,最小可能為1。這樣我們可以設定乙個中間遍歷c來迴圈列舉出從n開始遞減到1的所有整數,在迴圈中檢測c是否滿足m%c == 0 且 n %c == 0。若滿足條件,說明c是m,n的公約數。

**實現:

/**

* 計算公約數

* @author administrator

*/public class demo1

//判斷是否是公約數 : 定義c中間變數,從n到1逐漸遞減,如果滿足條件則輸出

for (long c = n; c > 1; c--)

} input.close();

}}

執行結果如下:

最大公約數簡便演算法 最大公約數演算法

1 查詢約數法 先分別找出每個數的所有約數,再從兩個數的約數中找出公有的約數,其中最大的乙個就是 最大公約數 例如,求 12 和 30 的最大公約數 12 的約數有 1 2 3 4 6 12 30 的約數有 1 2 3 5 6 10 15 30 12 和 30 的公約數有 1 2 3 6,其中 6 ...

求解最大公約數問題

最大公因數,又稱最大公約數。是指 n 2 個自然數 a1,a2,an 的最大公因數。通常有兩種表示方式 它們的所有公因數中最大的那乙個 如果自然數 m 是這 n 個自然數的公因數,且這 n 個數的任意公因數都是 m 的因數,就稱 m 是這 n 個數的最大用因數。通常國內的記述方式為 a1,a2,an...

演算法 最大公約數

最大公約數是乙個很經典的數學問題,對於這個問題有四種通用的解法,質因數分解法,短除法,不過比較常用的還是輾轉相除法,演算法出自於歐幾裡的著作 幾何原本 還有乙個就是出自 九章算術 的更相減損法,一般實現的時候都是通過輾轉相除法實現,基本的邏輯是這樣的 假設把a和b的最大公約數表示成為f a,b 並且...