最大公約數既能被兩個整數整除的最大整數,例如,24與15兩個數的最大公約數為3。求最大公約數可以求余法實現。即用兩個數中最大的數除以最小的數求余,然後使用除數除以余數求余,直到余數為0時,之前的除數也就是兩個數的最大公約數。計算最大公約數的算法如下:
public float maxGongYueShu(int n1,int n2)
{
int temp = Math.Max(n1, n2);
n2 = Math.Min(n1, n2);//n2中存放兩個數中最小的
n1 = temp;//n1中存放兩個數中最大的
while(n2!=0)
{
n1 = n1 > n2 ? n1 : n2;//使n1中的數大於n2中的數
int m=n1 % n2;
n1 = n2;
n2 = m;
}
return n1;
}