一、最大公约数与最小公倍数
最大公约数,属于数论所探究的内容。
最大公约数可以通过下面的三种方法求出来。
最小公倍数呢,它与最大公约数的乘机为所求数之积。
比如求 x,y的最大公约数和最小公倍数
记住这个公式: xy=最小公倍数最大公约数
二、求最大公约数的三种方法
①辗转相除法
算法流程图
代码块:
int measure(int x, int y)
{ int z = y;while(x%y!=0){z = x%y;x = y;y = z; }return z;
}
运行结果:
②辗转相减法
代码块:
int measure(int a,int b)
{ while(a != b){if(a>b){a = a - b;}else {b = b - a;}}return a;
}
运行结果:
③穷举法
流程图:
代码块:
int measure(int x,int y)
{int temp = 0;for(temp = x ; ; temp-- ){if(x%temp == 0 && y%temp==0) break; }return temp;
}
④递归法
int gcd (int x, int y){if (y==0)return x;else return gcd (y,x%y); }