# BigInteger.Max(BigInteger, BigInteger) Method

## Definition

Returns the larger of two BigInteger values.

``````public:
static System::Numerics::BigInteger Max(System::Numerics::BigInteger left, System::Numerics::BigInteger right);``````
``public static System.Numerics.BigInteger Max (System.Numerics.BigInteger left, System.Numerics.BigInteger right);``
``static member Max : System.Numerics.BigInteger * System.Numerics.BigInteger -> System.Numerics.BigInteger``
``Public Shared Function Max (left As BigInteger, right As BigInteger) As BigInteger``

#### Parameters

left
BigInteger

The first value to compare.

right
BigInteger

The second value to compare.

#### Returns

The `left` or `right` parameter, whichever is larger.

## Examples

The following example uses the Max method to select the largest number in an array of BigInteger values.

``````using System;
using System.Numerics;

public class Example
{
public static void Main()
{
BigInteger[] numbers = { Int64.MaxValue * BigInteger.MinusOne,
BigInteger.MinusOne,
10359321239000,
BigInteger.Pow(103988, 2),
BigInteger.Multiply(Int32.MaxValue, Int16.MaxValue),
BigInteger.Pow(Int32.MaxValue, 2)) };
if (numbers.Length < 2)
{
Console.WriteLine("Cannot determine which is the larger of {0} numbers.",
numbers.Length);
return;
}

BigInteger largest = numbers[numbers.GetLowerBound(0)];

for (int ctr = numbers.GetLowerBound(0) + 1; ctr <= numbers.GetUpperBound(0); ctr++)
largest = BigInteger.Max(largest, numbers[ctr]);

Console.WriteLine("The values:");
foreach (BigInteger number in numbers)
Console.WriteLine("{0,55:N0}", number);

Console.WriteLine("\nThe largest number of the series is:");
Console.WriteLine("   {0:N0}", largest);
}
}
// The example displays the following output:
//       The values:
//                                    -9,223,372,036,854,775,807
//                                                            -1
//                                            10,359,321,239,000
//                                                10,813,504,144
//                                            70,366,596,661,249
//            85,070,591,730,234,615,852,008,593,798,364,921,858
//
//       The largest number of the series is:
//          85,070,591,730,234,615,852,008,593,798,364,921,858
``````
``````Imports System.Numerics

Module Example
Public Sub Main()
Dim numbers() As BigInteger = { Int64.MaxValue * BigInteger.MinusOne,
BigInteger.MinusOne,
10359321239000,
BigInteger.Pow(103988, 2),
BigInteger.Multiply(Int32.MaxValue, Int16.MaxValue),
BigInteger.Pow(Int32.MaxValue, 2)) }
If numbers.Length < 2 Then
Console.WriteLine("Cannot determine which is the larger of {0} numbers.",
numbers.Length)
Exit Sub
End If

Dim largest As BigInteger = numbers(numbers.GetLowerBound(0))

For ctr As Integer = numbers.GetLowerBound(0) + 1 To numbers.GetUpperBound(0)
largest = BigInteger.Max(largest, numbers(ctr))
Next
Console.WriteLine("The values:")
For Each number As BigInteger In numbers
Console.WriteLine("{0,55:N0}", number)
Next
Console.WriteLine()
Console.WriteLine("The largest number of the series is:")
Console.WriteLine("   {0:N0}", largest)
End Sub
End Module
' The example displays the following output:
'       The values:
'                                    -9,223,372,036,854,775,807
'                                                            -1
'                                            10,359,321,239,000
'                                                10,813,504,144
'                                            70,366,596,661,249
'            85,070,591,730,234,615,852,008,593,798,364,921,858
'
'       The largest number of the series is:
'          85,070,591,730,234,615,852,008,593,798,364,921,858
``````

## Remarks

This method corresponds to the Math.Max method for primitive numeric types.