首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> C >> C 語言入門

C語言輾轉相除法求最大公約數與最小公倍數

     編輯:C 語言入門

算法原理

最大公約數 (GCD):gcd(a,b) = gcd(b, a%b),直到餘數為 0,當前除數即為 GCD。
最小公倍數 (LCM):lcm(a,b) = a * b / gcd(a,b)。

代碼實現


關鍵細節

  • 確保 a >= b 可省略,算法自動處理(首次餘數即調換)。
  • m * n 可能溢出,大數用 long long 或先除後乘:lcm = m / gcd * n。
  • 輸入 0 需特判:gcd(0,n)=n, lcm(0,n)=0。

遞歸版

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved