1. 程式人生 > >C#輾轉相除法求最大公約數與最小公倍數

C#輾轉相除法求最大公約數與最小公倍數

class Program
{
static void Main(string[] args)
{
int num1, num2, mm;
Console.WriteLine(“請輸入第一個數:”);
num1 = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(“請輸入第二個數:”);
num2 = Convert.ToInt32(Console.ReadLine());
mm = GCD(num1,num2);
Console.WriteLine(“最大公約數為:{0} 最小公倍數為:{1}”,mm,num1*num2/mm);
Console.ReadKey();

    }
    static int GCD(int m,int n ){
    int r,t;
        if(m<n){
        t=n;
        n=m;
        m=t;
        }
        while(n!=0){
            r = m % n;
            m = n;
            n = r;

        }
        return (m);
    }
}

這裡寫圖片描述
1、(m>n)非負數,m%n餘數為r;
2、r=0;結束;否則(3)
3、m=n;n=r;轉到(1)