求两个数的最大公约数的方法
对于两个整数x,y,求其最大公约数(语言:C,C++)
原理:辗转除法求最大公约数:就是不断的用除数去除以余数,直到余数为0 ,最终得到的除数就是该两个数的最大公约数
1.递归法:
- int gcd(int x,int y)
 - {
 - int result;
 - if(y==0)
 - result=x;
 - else
 - result=gcd(y,x%y);
 - return result;
 - }
 
2.非递归法(辗转相除法)
- int gcd(int x,int y)
 - {//辗转除法求最大公约数:就是不断的用除数去除以余数,直到余数为0
 - int tem ;
 - while(x%y!=0)
 - {
 - tem=x%y;
 - x=y;
 - y=tem;
 - }
 - return y;
 - }
 
                    
                
                
            
        
浙公网安备 33010602011771号