- 知识简介
什么是最大公约数,什么又是最小公倍数呢?
| 代表的是 / 除法
下面把求最大公约数称为gcd,求最小公倍数称为lcm,他们有什么性质?
- 算法证明原理
从1可知,我们求出最大公约数gcd就可以通过公式lcm = (a * b) / gcd即能得到最小公倍数了,那么我们介绍一种常用的求最大公约数的方法,那就是欧几里得算法
- 例题
这里给出题目地址:
简单基础gcd例题
AC Code:
//
// Created by Acmer_ly on 2020/3/14.
//习题4-7 最大公约数和最小公倍数 (15分)
#include <stdio.h>
int gcd(int m, int n);
int lcm(int m, int n);
int main(void) {
int m, n;
scanf("%d%d", &m, &n);
printf("%d %d\n", gcd(m, n), lcm(m, n));
return 0;
}
int gcd(int m, int n) {
if (n == 0) return m;
return gcd(n, m % n);
}
int lcm(int m, int n) {
return (m * n) / gcd(m, n);
}