# BigInteger.Remainder(BigInteger, BigInteger) Método

## Definición

Realiza la división entera en dos valores BigInteger y devuelve el resto.Performs integer division on two BigInteger values and returns the remainder.

``````public:
static System::Numerics::BigInteger Remainder(System::Numerics::BigInteger dividend, System::Numerics::BigInteger divisor);``````
``public static System.Numerics.BigInteger Remainder (System.Numerics.BigInteger dividend, System.Numerics.BigInteger divisor);``
``static member Remainder : System.Numerics.BigInteger * System.Numerics.BigInteger -> System.Numerics.BigInteger``
``Public Shared Function Remainder (dividend As BigInteger, divisor As BigInteger) As BigInteger``

#### Parámetros

dividend
BigInteger

Valor que se va a dividir.The value to be divided.

divisor
BigInteger

Valor por el que se va a dividir.The value to divide by.

#### Devoluciones

Resto después de dividir `dividend` por `divisor`.The remainder after dividing `dividend` by `divisor`.

#### Excepciones

El valor de `divisor` es 0 (cero).`divisor` is 0 (zero).

## Ejemplos

En el ejemplo siguiente se compara el resto del método DivRem con el resto devuelto por el método Remainder para establecer que los dos métodos calculan los restos idénticos.The following example compares the remainder from the DivRem method with the remainder returned by the Remainder method to establish that the two methods calculate identical remainders.

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

public class Example
{
public static void Main()
{
BigInteger dividend1 = BigInteger.Pow(Int64.MaxValue, 3);
BigInteger dividend2 = dividend1 * BigInteger.MinusOne;
BigInteger divisor1 = Int32.MaxValue;
BigInteger divisor2 = divisor1 * BigInteger.MinusOne;
BigInteger remainder1, remainder2;
BigInteger divRem1 = BigInteger.Zero;
BigInteger divRem2 = BigInteger.Zero;

remainder1 = BigInteger.Remainder(dividend1, divisor1);
remainder2 = BigInteger.Remainder(dividend2, divisor1);

BigInteger.DivRem(dividend1, divisor1, out divRem1);
Console.WriteLine("BigInteger.Remainder({0}, {1}) = {2}",
dividend1, divisor1, remainder1);
Console.WriteLine("BigInteger.DivRem({0}, {1}) = {2}",
dividend1, divisor1, divRem1);
if (remainder1.Equals(divRem1))
Console.WriteLine("The remainders are equal.\n");

BigInteger.DivRem(dividend2, divisor2, out divRem2);
Console.WriteLine("BigInteger.Remainder({0}, {1}) = {2}",
dividend2, divisor2, remainder2);
Console.WriteLine("BigInteger.DivRem({0}, {1}) = {2}",
dividend2, divisor2, divRem2);
if (remainder2.Equals(divRem2))
Console.WriteLine("The remainders are equal.\n");
}
}
// The example displays the following output:
//    BigInteger.Remainder(7.8463771692333509522426190271E+56, 2147483647) = 1
//    BigInteger.DivRem(7.8463771692333509522426190271E+56, 2147483647) = 1
//    The remainders are equal.
//
//    BigInteger.Remainder(-7.8463771692333509522426190271E+56, -2147483647) = -1
//    BigInteger.DivRem(-7.8463771692333509522426190271E+56, -2147483647) = -1
//    The remainders are equal.
``````
``````Imports System.Numerics

Module Example
Public Sub Main()
Dim dividend1 As BigInteger = BigInteger.Pow(Int64.MaxValue, 3)
Dim dividend2 As BigInteger = dividend1 * BigInteger.MinusOne
Dim divisor1 As BigInteger = Int32.MaxValue
Dim divisor2 As BigInteger = divisor1 * BigInteger.MinusOne
Dim remainder1, remainder2 As BigInteger
Dim divRem1 As BigInteger = BigInteger.Zero
Dim divRem2 As BigInteger = BigInteger.Zero

remainder1 = BigInteger.Remainder(dividend1, divisor1)
remainder2 = BigInteger.Remainder(dividend2, divisor1)

BigInteger.DivRem(dividend1, divisor1, divRem1)
Console.WriteLine("BigInteger.Remainder({0}, {1}) = {2}",
dividend1, divisor1, remainder1)
Console.WriteLine("BigInteger.DivRem({0}, {1}) = {2}",
dividend1, divisor1, divRem1)
If remainder1.Equals(divRem1) Then Console.WriteLine("The remainders are equal.")
Console.WriteLine()

BigInteger.DivRem(dividend2, divisor2, divRem2)
Console.WriteLine("BigInteger.Remainder({0}, {1}) = {2}",
dividend2, divisor2, remainder2)
Console.WriteLine("BigInteger.DivRem({0}, {1}) = {2}",
dividend2, divisor2, divRem2)
If remainder2.Equals(divRem2) Then Console.WriteLine("The remainders are equal.")
Console.WriteLine()
End Sub
End Module
' The example displays the following output:
'    BigInteger.Remainder(7.8463771692333509522426190271E+56, 2147483647) = 1
'    BigInteger.DivRem(7.8463771692333509522426190271E+56, 2147483647) = 1
'    The remainders are equal.
'
'    BigInteger.Remainder(-7.8463771692333509522426190271E+56, -2147483647) = -1
'    BigInteger.DivRem(-7.8463771692333509522426190271E+56, -2147483647) = -1
'    The remainders are equal.
``````

## Comentarios

El signo del resto es el signo del parámetro `dividend`.The sign of the remainder is the sign of the `dividend` parameter.

El método Remainder se implementa para los lenguajes que no admiten operadores personalizados.The Remainder method is implemented for languages that do not support custom operators. Su comportamiento es idéntico al de la división mediante el operador de módulo.Its behavior is identical to division using the modulus operator.

Si es necesario, el método realiza automáticamente la conversión implícita de otros tipos enteros en BigInteger objetos antes de realizar la operación de módulo.If necessary, the method automatically performs implicit conversion of other integral types to BigInteger objects before it performs the modulus operation.