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 sind, um nützliche Informationen zu einem ArgumentOutOfRangeExceptionbereitzustellen. 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 unterteilt werden können, ohne einen Rest zurückzugeben.
Wenn die left
Parameter und right
ungleich null Zahlen sind, gibt die Methode immer mindestens den Wert 1 zurück, da alle Zahlen durch 1 geteilt werden können. Wenn beide Parameter 0 sind, gibt die Methode den absoluten Wert des Parameters ungleich 0 zurück. Wenn beide Werte 0 sind, gibt die Methode null zurück.
Hinweis
Das Berechnen des größten gemeinsamen Divisors von sehr großen Werten von left
und right
kann ein sehr zeitaufwendiger Vorgang sein.
Der von der GreatestCommonDivisor -Methode zurückgegebene Wert ist unabhängig vom Vorzeichen der Parameter und right
immer left
positiv.