以前寫的,直接複製過來。
求兩個整數的最大公約數和最小公倍數。
演算法思想:最小公倍數 = 兩個整數之積 / 最大公約數
求最大公約數的演算法:假設 m > n (1)若 m / n 餘數為 0 (m % n == 0),則n 為最大公約數。(2)若 m % n != 0 ,令 r = m % n; 等式可以寫成
m = n * x + r ,在向下 可以求 n % r 如果餘數為0, r 就是m 和 n 的最大公約數,如果餘數不為0,繼續向下尋求被除數和餘數 求模 餘數為 0 的一組。最後的被除數就是 m 和 n 的最大公約數 。
m = n * x + r = r *(( x * x) + 1) +p = ............(x 為商)
(演算法是自己想的,如有錯誤請指正)
//求兩個整數的最大公約數和最小公倍數
#include
using namespace std;
int main()
r = m % n;
while(r != 0)
cout<<"最大公約數為:"return 0;
}
求兩個整數的最大公約數和最小公倍數
求兩個數的最大公約數和最小公倍數 coding utf 8 x int raw input r 請輸入乙個正整數 y int raw input r 請輸入乙個正整數 def hcf x,y if x y smaller y else smaller x for i in range smaller...
求兩個整數的最大公約數和最小公倍數
編寫兩個函式,分別求兩個整數的最大公約數和最小公倍數,在主函式調 用這兩個函式,並輸出結果。兩個整數由鍵盤輸入。如下 def max num num1,num2 if num1 num2 for i in range num2,1,1 if num1 i 0and num2 i 0 print st...
求兩個正整數的最大公約數
基本要求 從鍵盤輸入兩個整數,輸出兩個整數的最大公約數。用c或c 語言實現程式解決問題。1.程式風格良好 使用自定義注釋模板 2.使用三種演算法解決問題 3.提供友好的輸入輸出,並進行輸入資料的正確性驗證 方法一 窮舉法 窮舉法,顧名思義,就是乙個乙個試,即遍歷兩個整數中較小的數到零的所有數,如果能...