Welcome

首页 / 软件开发 / C# / C#求最大公约数

C#求最大公约数2010-07-27最大公约数既能被两个整数整除的最大整数,例如,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;
}