#include <stdio.h> int main() { long int a, b,sum = 0; long int number1 = 0; long int number2 = 0; scanf("%ld %ld",&a,&b); number1 = a; number2 = b; while (b != 0) {//辗转相除法 int temp = 0; temp = b; b = a % b; a = temp;//此时a就是最大公约数,b此时等于0 } sum = a + ((number1 * number2) / a);//最大公约数和最小公倍数相加 printf("%ld",sum); return 0; }
- 最小公倍数(LCM) 的计算依赖于 最大公约数(GCD),因为两者在数学上满足:LCM(𝑎,𝑏)×GCD(𝑎,𝑏)=𝑎×𝑏