1. 程式人生 > >關於最大公約數的三種解法之二(連續整數檢測演算法)

關於最大公約數的三種解法之二(連續整數檢測演算法)

首先,我們先有t=min{m,n},我們可以檢測t是否可以整除m和n,如果可以,t就是最大公約數,如果不能,我們就將t減一,然後一直持續下去,直到可以整除,就可以停止。

    計算gcd(m,n)的連續整數檢測演算法

  首先 ,將min{m,n}的值賦給t,

  第二步,m除以t,如果餘數為0,進入第三步,否則,進入第四步。

  第三步,n除以t,如果餘數為0,進入第三步,否則,進入第四步。

  第四步,把t的值減一,返回到第二步。

下面是我用java實現的演算法

package gcd;

public class gcd2 {
    
    public static int gcd(int m,int n)
    {
        int t;
        if(m<n)
        {
            t=m;
        }
        else
        {
            t=n;
        }
        for(t=m;t>1;t--)
        {
            if(m%t==0&&n%t==0)
            
            break;
        
            
        }
        
        return t;
        
    }
    public static void main(String args[])
    {
        System.out.print(gcd(99,66));
     
    }

}