1.最大公约数
最大公因数,也称最大公约数、最大公因子,指两个或多个整数共有约数中最大的一个(例如,3和9的最大公约数是3)
2.最小公倍数
几个数公有的倍数,叫做这几个数的公倍数,其中最小的一个叫做这几个数的最小公倍数(例如,12和18的最小公倍数是36)
接下来介绍分别求最大公约数和最小公倍数的函数
导入函数 需要头文件 #include <algorithm>
或者直接用万能头文件 #include<bits/stdc++.h>
__gcd() 最大公约数
a*b/__gcd() 最小公倍数(注意下面的横杠是两条)
#include<bits/stdc++.h>
using namespace std;
int main(){
int a = 12, b = 18;
int s;
s = __gcd(a,b);
cout << "a和b的最大公约数是" << s << endl;
return 0;
}
求最小公倍数
#include<bits/stdc++.h>
using namespace std;
int main(){
int a = 12, b = 18;
int s;
s = a*b/__gcd(a,b);
cout << "a和b的最小公倍数是" << s << endl;
return 0;
}
当然还有一些小伙伴想真正掌握求最大公约数和最小公倍数,不想利用函数来求。
接下来我把另外的求法也写出来供大家参考
3.最大公约数
#include<bits/stdc++.h>
using namespace std;
int main(){
int a,b,c;
cin >> a >> b;
for(int i=1; i<b; i++){
if(a%i==0 && b%i==0){
c = i;
}
}
cout << "最大公约数是:" << c << endl;
return 0;
}
4.最小公倍数
#include<bits/stdc++.h>
using namespace std;
int main(){
int a,b,c;
cin >> a >> b;
for(int i=1; i<=a*b; i++){
if(i%a==0 && i%b==0){
c = i;
break;
}
}
cout << "最小公倍数是:" << c << endl;
return 0;
}
如果大家有更好的方法也可以私信我,大家一起学习一起进步,最后希望大家多多点赞收藏