BigInteger.GreatestCommonDivisor(BigInteger, BigInteger) Método

Definição

Localiza o maior divisor comum de dois valores 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

Parâmetros

left
BigInteger

O primeiro valor.The first value.

right
BigInteger

O segundo valor.The second value.

Retornos

O maior divisor comum de left e right.The greatest common divisor of left and right.

Exemplos

O exemplo a seguir ilustra uma chamada para o método GreatestCommonDivisor e a manipulação de exceção necessária para fornecer informações úteis sobre um ArgumentOutOfRangeException.The following example illustrates a call to the GreatestCommonDivisor method and the exception handling necessary to provide useful information about an ArgumentOutOfRangeException. O resultado indica que o maior divisor comum desses dois números é 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                           

Comentários

O maior divisor comum é o maior número no qual os dois valores de BigInteger podem ser divididos sem retornar um resto.The greatest common divisor is the largest number into which the two BigInteger values can be divided without returning a remainder.

Se os parâmetros left e right forem números diferentes de zero, o método sempre retornará pelo menos um valor de 1 porque todos os números podem ser divididos por 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. Se um dos parâmetros for zero, o método retornará o valor absoluto do parâmetro diferente de zero.If either parameter is zero, the method returns the absolute value of the non-zero parameter. Se ambos os valores forem zero, o método retornará zero.If both values are zero, the method returns zero.

Observação

A computação do maior divisor comum de valores muito grandes de left e right pode ser uma operação muito demorada.Computing the greatest common divisor of very large values of left and right can be a very time-consuming operation.

O valor retornado pelo método GreatestCommonDivisor é sempre positivo, independentemente do sinal dos parâmetros left e right.The value returned by the GreatestCommonDivisor method is always positive regardless of the sign of the left and right parameters.

Aplica-se a