BigInteger.GreatestCommonDivisor(BigInteger, BigInteger) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menemukan pembavisor umum terbesar dari dua BigInteger nilai.
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
Nilai pertama.
- right
- BigInteger
Nilai kedua.
Mengembalikan
Pembavis umum terbesar dari left
dan right
.
Contoh
Contoh berikut mengilustrasikan panggilan ke GreatestCommonDivisor metode dan penanganan pengecualian yang diperlukan untuk memberikan informasi yang ArgumentOutOfRangeExceptionberguna tentang . Hasilnya menunjukkan bahwa pembavisor umum terbesar dari kedua angka ini adalah 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);
}
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
Keterangan
Pembagi umum terbesar adalah angka terbesar di mana dua BigInteger nilai dapat dibagi tanpa mengembalikan sisanya.
left
Jika parameter dan right
bukan angka nol, metode selalu mengembalikan setidaknya nilai 1 karena semua angka dapat dibagi dengan 1. Jika salah satu parameter adalah nol, metode mengembalikan nilai absolut parameter non-nol. Jika kedua nilai adalah nol, metode mengembalikan nol.
Catatan
Menghitung pembabung umum terbesar dari nilai-nilai left
yang sangat besar dan right
dapat menjadi operasi yang sangat memakan waktu.
Nilai yang GreatestCommonDivisor dikembalikan oleh metode selalu positif terlepas dari left
tanda parameter dan right
.