最大公约数
Posted sxy2004
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了最大公约数相关的知识,希望对你有一定的参考价值。
依旧是递归;
求最大公约数,
有一个常用的办法,
叫欧几里得算法(也就是辗转相除法);
欧几里得算法(简称gcd),
gcd(a,b)=gcd(b,a mod b);
就是a和b的最大公约数=b和a mod b的最大公约数;
直到a mod b==0的时候,
b就是最大公约数。
1 #include<cstdio> 2 using namespace std; 3 int gcd(int,int); 4 int main() 5 6 int a,b; 7 scanf("%d%d",&a,&b); 8 printf("%d",gcd(a,b)); 9 return 0; 10 11 int gcd(int x,int y) 12 13 if(x%y==0) return y; 14 return gcd(y,x%y); 15
坚持打卡O(∩_∩)O~
以上是关于最大公约数的主要内容,如果未能解决你的问题,请参考以下文章