- 求最小公因数
辗转相除法
int gcd(int a,int b)
{
do
{
int t;
t=a%b;
a=b;
b=t;
}while(t!=0);
return a;
}int gcd(int a,int b)
{
do
{
int t;
t=a%b;
a=b;
b=t;
}while(b);
return a;
}递归思想
int gcd(int a, int b){ //定义函数
if(a % b == 0)
return b;
return gcd(b, a%b); //辗转相除法
}朴素算法
(递归思想 先归后递
int gcd(int a,int b)
{
int i;
for(i=a;i>=1;i--)
{
if(a%i==0 && b%i==0)
return i;
if(a>b)
return gcd(b,a);
}
}- 求最小公倍数
等于 a * b / gcd(a,b)



京公网安备 11010502036488号