- C++
辗转相除法的代码实现
- 2024-10-11 20:02:04 @
#include<stdio.h>
int gcd(int x,int y){//x为较大数 y为较小数(不能错)
return x % y == 0 ? y : gcd(y, x % y);
/*
如果 x % y == 0就返回 y(除数兼较小数)
否则以 y(除数兼较小数)为 x(被除数兼较大数)
x % y为 y(除数兼较小数)
开始新一次公约数判断(辗转)
*/
}
int main()
{
int n,m;
scanf("%d%d",&n,&m);
n > m ? printf("%d",gcd(n,m)) : printf("%d",gcd(m,n));//n > m 还是 m > n
return 0;
}
要说的话都写在注释里了 就不多逼逼了
0 comments
No comments so far...