1.判断素数
bool isPrime(int num) {
if (num == 0 || num == 1) return false;
for (int i = 2; i * i <= n; i++)
if (num % i == 0) return false;
return true;
}
2.求最大公约数
int gcd(int a, int b) {
return !b ? a : gcd(b, a % b);
}
3.求最小公倍数
方法一:
int lcm(int a, int b) {
return a * b / gcd(a, b); //根据数学关系,两个整数的最小公倍数为它们的乘积除以它们的最大公约数
}
方法二:
int a, b, c;
c = __gcd(a, b); //直接使用此内置函数来求最大公约数
5.K进制转K进制
string itoa(int num, int k) { //输入需要转换的数字num和目标进制k
string s;
do {
int t = num % k;
if (k >= 0 && k <= 9) s += (t + '0');
else s += ('A' + t - 10);
num /= k;
} while (num != 0);
reverse(s.begin(), s.end());
return s; //返回值是一个string类型
}
标签:return,gcd,int,最大公约数,num,数学,相关,进制
From: https://www.cnblogs.com/Fare-well/p/16751325.html