BigInteger.GreatestCommonDivisor(BigInteger, BigInteger) BigInteger.GreatestCommonDivisor(BigInteger, BigInteger) BigInteger.GreatestCommonDivisor(BigInteger, BigInteger) BigInteger.GreatestCommonDivisor(BigInteger, BigInteger) Method

정의

BigInteger 값의 최대 공약수를 구합니다.Finds the greatest common divisor of two BigInteger values.

public:
 static System::Numerics::BigInteger GreatestCommonDivisor(System::Numerics::BigInteger left, System::Numerics::BigInteger right);
public static System.Numerics.BigInteger GreatestCommonDivisor (System.Numerics.BigInteger left, System.Numerics.BigInteger right);
static member GreatestCommonDivisor : System.Numerics.BigInteger * System.Numerics.BigInteger -> System.Numerics.BigInteger
Public Shared Function GreatestCommonDivisor (left As BigInteger, right As BigInteger) As BigInteger

매개 변수

left
BigInteger BigInteger BigInteger BigInteger

첫 번째 값입니다.The first value.

right
BigInteger BigInteger BigInteger BigInteger

두 번째 값입니다.The second value.

반환

leftright의 최대 공약수입니다.The greatest common divisor of left and right.

예제

다음 예제에 대 한 호출을 GreatestCommonDivisor 메서드 및 예외에 대 한 유용한 정보를 제공 하는 데 필요한 처리를 ArgumentOutOfRangeException입니다.The following example illustrates a call to the GreatestCommonDivisor method and the exception handling necessary to provide useful information about an ArgumentOutOfRangeException. 결과 이러한 두 숫자의 최대 공약수 1 임을 나타냅니다.The result indicates that the greatest common divisor of these two numbers is 1.

BigInteger n1 = BigInteger.Pow(154382190, 3);
BigInteger n2 = BigInteger.Multiply(1643590, 166935);
try
{
   Console.WriteLine("The greatest common divisor of {0} and {1} is {2}.", 
                     n1, n2, BigInteger.GreatestCommonDivisor(n1, n2));
}
catch (ArgumentOutOfRangeException e)
{
   Console.WriteLine("Unable to calculate the greatest common divisor:");
   Console.WriteLine("   {0} is an invalid value for {1}", 
                     e.ActualValue, e.ParamName);
}
Dim n1 As BigInteger = BigInteger.Pow(154382190, 3)
Dim n2 As BigInteger = BigInteger.Multiply(1643590, 166935)
Try
   Console.WriteLine("The greatest common divisor of {0} and {1} is {2}.", _
                     n1, n2, BigInteger.GreatestCommonDivisor(n1, n2))
Catch e As ArgumentOutOfRangeException
   Console.WriteLine("Unable to calculate the greatest common divisor:")
   Console.WriteLine("   {0} is an invalid value for {1}", _
                     e.ActualValue, e.ParamName)
End Try                           

설명

가장 일반적인 제 수는 최대 수는 두 BigInteger 나머지를 반환 하지 않고 값을 나눌 수 있습니다.The greatest common divisor is the largest number into which the two BigInteger values can be divided without returning a remainder.

경우는 leftright 매개 변수는 0이 아닌 숫자, 메서드는 항상 하나 이상의 값이 1 반환 하므로 1만 모든 숫자를 구분할 수 있습니다.If the left and right parameters are non-zero numbers, the method always returns at least a value of 1 because all numbers can be divided by 1. 매개 변수 중 하나가 0 인 경우 메서드는 0이 아닌 매개 변수의 절대 값을 반환 합니다.If either parameter is zero, the method returns the absolute value of the non-zero parameter. 값이 모두 0 인 경우 메서드는 0을 반환 합니다.If both values are zero, the method returns zero.

참고

매우 큰 값의 최대 공약수 컴퓨팅 leftright 작업을 매우 많은 시간이 소요 될 수 있습니다.Computing the greatest common divisor of very large values of left and right can be a very time-consuming operation.

값을 반환 합니다 GreatestCommonDivisor 메서드는 항상의 부호에 관계 없이 양수를 leftright 매개 변수.The value returned by the GreatestCommonDivisor method is always positive regardless of the sign of the left and right parameters.

적용 대상