This topic has not yet been rated - Rate this topic

# BigInteger.GreatestCommonDivisor Method

.NET Framework 4.5

Finds the greatest common divisor of two BigInteger values.

Namespace:  System.Numerics
Assembly:  System.Numerics (in System.Numerics.dll)
```'Declaration
Public Shared Function GreatestCommonDivisor ( _
left As BigInteger, _
right As BigInteger _
) As BigInteger
```

#### Parameters

left
Type: System.Numerics.BigInteger

The first value.

right
Type: System.Numerics.BigInteger

The second value.

#### Return Value

Type: System.Numerics.BigInteger
The greatest common divisor of left and right.

The greatest common divisor is the largest number into which the two BigInteger values can be divided without returning a remainder.

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. If either parameter is zero, the method returns the absolute value of the non-zero parameter. If both values are zero, the method returns zero.

Note

Computing the greatest common divisor of very large values of left and right can be a very time-consuming operation.

The value returned by the GreatestCommonDivisor method is always positive regardless of the sign of the left and right parameters.

The following example illustrates a call to the GreatestCommonDivisor method and the exception handling necessary to provide useful information about an ArgumentOutOfRangeException. The result indicates that the greatest common divisor of these two numbers is 1.

```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
```

#### .NET Framework

Supported in: 4.5.1, 4.5, 4

Supported in: 4

#### Portable Class Library

Supported in: Portable Class Library

#### .NET for Windows Store apps

Supported in: Windows 8

#### .NET for Windows Phone apps

Supported in: Windows Phone 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.