Метод GreatestCommonDivisor
BigInteger.GreatestCommonDivisor принимает
два значения
BigInteger
и возвращает наибольшее число, которое
делит оба без остатка. Для взаимно
простых чисел результат равен 1.
Если оба аргумента нулевые, возвращается ноль.
Синтаксис
BigInteger res = BigInteger.GreatestCommonDivisor(left, right);
Пример
Давайте найдём НОД для 48 и 18:
using System;
using System.Numerics;
class Program
{
static void Main()
{
BigInteger res = BigInteger.GreatestCommonDivisor(48, 18);
Console.WriteLine(res);
}
}
Результат выполнения кода:
6
Пример
Давайте обработаем взаимно простые числа:
using System;
using System.Numerics;
class Program
{
static void Main()
{
BigInteger res = BigInteger.GreatestCommonDivisor(12345, 67890);
Console.WriteLine(res);
}
}
Результат выполнения кода:
15
Пример
Давайте найдём НОД для больших значений:
using System;
using System.Numerics;
class Program
{
static void Main()
{
BigInteger a = BigInteger.Parse("999999999999999999999999");
BigInteger b = BigInteger.Parse("999999999999999999999998");
BigInteger res = BigInteger.GreatestCommonDivisor(a, b);
Console.WriteLine(res);
}
}
Результат выполнения кода:
1