BigInteger.GreatestCommonDivisor(BigInteger, BigInteger) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Sucht den größten gemeinsamen Divisor von zwei BigInteger Werten.
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
Parameter
- left
- BigInteger
Der erste Wert.
- right
- BigInteger
Der zweite Wert.
Gibt zurück
Der größte gemeinsame Divisor von left und right.
Beispiele
Das folgende Beispiel veranschaulicht einen Aufruf der GreatestCommonDivisor Methode und die Ausnahmebehandlung, die erforderlich ist, um nützliche Informationen zu einem ArgumentOutOfRangeException. Das Ergebnis gibt an, dass der größte gemeinsame Divisor dieser beiden Zahlen 1 ist.
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);
}
let n1 = BigInteger.Pow(154382190, 3)
let n2 = BigInteger.Multiply(1643590, 166935)
try
printfn $"The greatest common divisor of {n1} and {n2} is {BigInteger.GreatestCommonDivisor(n1, n2)}."
with :? ArgumentOutOfRangeException as e ->
printfn $"Unable to calculate the greatest common divisor:"
printfn $" {e.ActualValue} is an invalid value for {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
Hinweise
Der größte gemeinsame Divisor ist die größte Zahl, in die die beiden BigInteger Werte aufgeteilt werden können, ohne einen Rest zurückzugeben.
Wenn es sich bei den left Parametern right um Nicht-Null-Zahlen handelt, gibt die Methode immer mindestens einen Wert von 1 zurück, da alle Zahlen durch 1 dividiert werden können. Wenn eines der Parameter null ist, gibt die Methode den absoluten Wert des Nicht-Null-Parameters zurück. Wenn beide Werte null sind, gibt die Methode null zurück.
Note
Das Berechnen des größten gemeinsamen Divisors von sehr großen Werten und leftright kann eine sehr zeitaufwendige Operation sein.
Der von der GreatestCommonDivisor Methode zurückgegebene Wert ist unabhängig vom Vorzeichen der left Methode right immer positiv (einschließlich Null).