En C#, Math.DivRem() es un método de clase Math que divide dos números y devuelve el resto. Al usar el operador División, no obtenemos el resto en una variable separada, pero al usar el método DivRem() , obtenemos ambos.
Este método se puede sobrecargar pasándole diferentes tipos y números de argumentos.
- Matemáticas.DivRem(Int32, Int32, Int32)
- Matemáticas.DivRem(Int64, Int64, Int64)
Matemáticas.DivRem(Int32, Int32, Int32)
Este método se utiliza para calcular el cociente de dos enteros de 32 bits con signo y devuelve el resto en un parámetro de salida.
Sintaxis:
public static int DivRem(int dividend, int divisor, int result);
Parámetro:
dividendo: Es un número de Dividendo de Entrada de tipo Int32 .
divisor: Es un número de divisor de entrada de tipo Int32 .
resultado: es un resto de salida de tipo Int32 .
Tipo de devolución: esta función devuelve el cociente de los números especificados de tipo Int32 .
Excepción: si el valor de Divisor es cero , este método dará DivideByZeroException .
Ejemplo:
// C# program to demonstrate working // of Math.DivRem(Int32, Int32, Int32) using System; class DivRemGeeks { // Main method static void Main() { // Input +ve dividend and divisor number int dividend_A = 9845324; int divisor_A = 7; // Input negative dividend and divisor number int dividend_B = -99999; int divisor_B = 2; int result_1; int result_2; // Using the MATH.DivRem() Method int quotient_ONE = Math.DivRem(dividend_A, divisor_A, out result_1); int quotient_TWO = Math.DivRem(dividend_B, divisor_B, out result_2); // Print Result Console.WriteLine(quotient_ONE); Console.WriteLine(result_1); Console.WriteLine(quotient_TWO); Console.WriteLine(result_2); } }
1406474 6 -49999 -1
Matemáticas.DivRem(Int64, Int64, Int64)
Este método se utiliza para calcular el cociente de dos enteros de 64 bits con signo (largos) y devuelve el resto en un parámetro de salida.
Sintaxis:
public static long DivRem(int dividend, int divisor, int result);
Parámetro:
dividendo: Es un número de Dividendo de Entrada de tipo Int64 .
divisor: Es un número de divisor de entrada de tipo Int64 .
resultado: es un resto de salida de tipo Int64 .
Tipo de devolución: esta función devuelve el cociente de los números especificados de tipo Int64 .
Excepción: si el valor de Divisor es cero , este método dará DivideByZeroException .
Ejemplo:
// C# program to demonstrate working // of Math.DivRem(Int64, Int64, Int64) method using System; class DivRemGeeks { // Main method static void Main() { // Input +ve dividend and divisor number long dividend_A = 9223372036854775779; long divisor_A = 2000; // Input negative dividend and divisor number long dividend_B = -99999888844499233; long divisor_B = 768933; long result_1; long result_2; // Using the MATH.DivRem() Method long quotient_ONE = Math.DivRem(dividend_A, divisor_A, out result_1); long quotient_TWO = Math.DivRem(dividend_B, divisor_B, out result_2); // Print Result Console.WriteLine(quotient_ONE); Console.WriteLine(result_1); Console.WriteLine(quotient_TWO); Console.WriteLine(result_2); } }
4611686018427387 1779 -130050197929 -359476
Referencias: https://docs.microsoft.com/en-us/dotnet/api/system.math.divrem?view=netframework-4.7.2