# Math.DivRem 메서드

## 정의

두 수의 몫을 계산하고 나머지를 출력 매개 변수로 반환합니다.Calculates the quotient of two numbers and also returns the remainder in an output parameter.

## 오버로드

 DivRem(Int32, Int32, Int32) 부호 있는 두 32비트 정수의 몫을 계산하고 나머지를 출력 매개 변수로 반환합니다.Calculates the quotient of two 32-bit signed integers and also returns the remainder in an output parameter. DivRem(Int64, Int64, Int64) 부호 있는 두 64비트 정수의 몫을 계산하고 나머지를 출력 매개 변수로 반환합니다.Calculates the quotient of two 64-bit signed integers and also returns the remainder in an output parameter.

## DivRem(Int32, Int32, Int32)

부호 있는 두 32비트 정수의 몫을 계산하고 나머지를 출력 매개 변수로 반환합니다.Calculates the quotient of two 32-bit signed integers and also returns the remainder in an output parameter.

``````public:
static int DivRem(int a, int b, [Runtime::InteropServices::Out] int % result);``````
``public static int DivRem (int a, int b, out int result);``
``static member DivRem : int * int * int -> int``
``Public Shared Function DivRem (a As Integer, b As Integer, ByRef result As Integer) As Integer``

#### 매개 변수

a
Int32

피제수입니다.The dividend.

b
Int32

제수입니다.The divisor.

result
Int32

나머지입니다.The remainder.

#### 반환

Int32

지정된 수의 몫입니다.The quotient of the specified numbers.

#### 예외

`b`가 0입니다.`b` is zero.

### 예제

다음 예제는 DivRem(Int32, Int32, Int32) 메서드.The following example demonstrates the DivRem(Int32, Int32, Int32) method.

``````using System;

public class Example
{
public static void Main()
{
// Define several positive and negative dividends.
int[] dividends = { Int32.MaxValue, 13952, 0, -14032,
Int32.MinValue };
// Define one positive and one negative divisor.
int[] divisors = { 2000, -2000 };

foreach (int divisor in divisors)
{
foreach (int dividend in dividends)
{
int remainder;
int quotient = Math.DivRem(dividend, divisor, out remainder);
Console.WriteLine(@"{0:N0} \ {1:N0} = {2:N0}, remainder {3:N0}",
dividend, divisor, quotient, remainder);
}
}
}
}
// The example displays the following output:
//       2,147,483,647 \ 2,000 = 1,073,741, remainder 1,647
//       13,952 \ 2,000 = 6, remainder 1,952
//       0 \ 2,000 = 0, remainder 0
//       -14,032 \ 2,000 = -7, remainder -32
//       -2,147,483,648 \ 2,000 = -1,073,741, remainder -1,648
//       2,147,483,647 \ -2,000 = -1,073,741, remainder 1,647
//       13,952 \ -2,000 = -6, remainder 1,952
//       0 \ -2,000 = 0, remainder 0
//       -14,032 \ -2,000 = 7, remainder -32
//       -2,147,483,648 \ -2,000 = 1,073,741, remainder -1,648
``````
``````Module Example
Public Sub Main()
' Define several positive and negative dividends.
Dim dividends() As Integer = { Int32.MaxValue, 13952, 0, -14032, _
Int32.MinValue }
' Define one positive and one negative divisor.
Dim divisors() As Integer = { 2000, -2000 }

For Each divisor As Integer In divisors
For Each dividend As Integer In dividends
Dim remainder As Integer
Dim quotient As Integer = Math.DivRem(dividend, divisor, remainder)
Console.WriteLine("{0:N0} \ {1:N0} = {2:N0}, remainder {3:N0}", _
dividend, divisor, quotient, remainder)
Next
Next
End Sub
End Module
' The example displays the following output:
'       2,147,483,647 \ 2,000 = 1,073,741, remainder 1,647
'       13,952 \ 2,000 = 6, remainder 1,952
'       0 \ 2,000 = 0, remainder 0
'       -14,032 \ 2,000 = -7, remainder -32
'       -2,147,483,648 \ 2,000 = -1,073,741, remainder -1,648
'       2,147,483,647 \ -2,000 = -1,073,741, remainder 1,647
'       13,952 \ -2,000 = -6, remainder 1,952
'       0 \ -2,000 = 0, remainder 0
'       -14,032 \ -2,000 = 7, remainder -32
'       -2,147,483,648 \ -2,000 = 1,073,741, remainder -1,648
``````

### 설명

나머지 값은 나머지 연산자의 결과와 같습니다.The remainder value equals the result of the remainder operator.

## DivRem(Int64, Int64, Int64)

부호 있는 두 64비트 정수의 몫을 계산하고 나머지를 출력 매개 변수로 반환합니다.Calculates the quotient of two 64-bit signed integers and also returns the remainder in an output parameter.

``````public:
static long DivRem(long a, long b, [Runtime::InteropServices::Out] long % result);``````
``public static long DivRem (long a, long b, out long result);``
``static member DivRem : int64 * int64 * int64 -> int64``
``Public Shared Function DivRem (a As Long, b As Long, ByRef result As Long) As Long``

#### 매개 변수

a
Int64

피제수입니다.The dividend.

b
Int64

제수입니다.The divisor.

result
Int64

나머지입니다.The remainder.

#### 반환

Int64

지정된 수의 몫입니다.The quotient of the specified numbers.

#### 예외

`b`가 0입니다.`b` is zero.

### 예제

다음 예제는 DivRem(Int64, Int64, Int64) 메서드.The following example demonstrates the DivRem(Int64, Int64, Int64) method.

``````using System;

public class Example
{
public static void Main()
{
// Define several positive and negative dividends.
long[] dividends = { Int64.MaxValue, 13952, 0, -14032,
Int64.MinValue };
// Define one positive and one negative divisor.
long[] divisors = { 2000, -2000 };

foreach (long divisor in divisors)
{
foreach (long dividend in dividends)
{
long remainder;
long quotient = Math.DivRem(dividend, divisor, out remainder);
Console.WriteLine(@"{0:N0} \ {1:N0} = {2:N0}, remainder {3:N0}",
dividend, divisor, quotient, remainder);
}
}
}
}
// The example displays the following output:
//    9,223,372,036,854,775,807 \ 2,000 = 4,611,686,018,427,387, remainder 1,807
//    13,952 \ 2,000 = 6, remainder 1,952
//    0 \ 2,000 = 0, remainder 0
//    -14,032 \ 2,000 = -7, remainder -32
//    -9,223,372,036,854,775,808 \ 2,000 = -4,611,686,018,427,387, remainder -1,808
//    9,223,372,036,854,775,807 \ -2,000 = -4,611,686,018,427,387, remainder 1,807
//    13,952 \ -2,000 = -6, remainder 1,952
//    0 \ -2,000 = 0, remainder 0
//    -14,032 \ -2,000 = 7, remainder -32
//    -9,223,372,036,854,775,808 \ -2,000 = 4,611,686,018,427,387, remainder -1,808
``````
``````Module Example
Public Sub Main()
' Define several positive and negative dividends.
Dim dividends() As Long = { Int64.MaxValue, 13952, 0, -14032, _
Int64.MinValue }
' Define one positive and one negative divisor.
Dim divisors() As Long = { 2000, -2000 }

For Each divisor As Long In divisors
For Each dividend As Long In dividends
Dim remainder As Long
Dim quotient As Long = Math.DivRem(dividend, divisor, remainder)
Console.WriteLine("{0:N0} \ {1:N0} = {2:N0}, remainder {3:N0}", _
dividend, divisor, quotient, remainder)
Next
Next
End Sub
End Module
' The example displays the following output:
'    9,223,372,036,854,775,807 \ 2,000 = 4,611,686,018,427,387, remainder 1,807
'    13,952 \ 2,000 = 6, remainder 1,952
'    0 \ 2,000 = 0, remainder 0
'    -14,032 \ 2,000 = -7, remainder -32
'    -9,223,372,036,854,775,808 \ 2,000 = -4,611,686,018,427,387, remainder -1,808
'    9,223,372,036,854,775,807 \ -2,000 = -4,611,686,018,427,387, remainder 1,807
'    13,952 \ -2,000 = -6, remainder 1,952
'    0 \ -2,000 = 0, remainder 0
'    -14,032 \ -2,000 = 7, remainder -32
'    -9,223,372,036,854,775,808 \ -2,000 = 4,611,686,018,427,387, remainder -1,808
``````

### 설명

나머지 값은 나머지 연산자의 결과와 같습니다.The remainder value equals the result of the remainder operator.