Math.DivRem Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
İki sayının bölüm değerini hesaplar ve kalan değeri bir çıkış parametresinde döndürür.
Aşırı Yüklemeler
DivRem(Int64, Int64, Int64) |
İki 64 bit imzalı tamsayının bölüm değerini hesaplar ve kalan değeri bir çıkış parametresinde döndürür. |
DivRem(Int32, Int32, Int32) |
İki adet 32 bit imzalı tamsayının çekirdeğini hesaplar ve kalan değeri bir çıkış parametresinde döndürür. |
DivRem(UIntPtr, UIntPtr) |
İmzalanmamış iki yerel boyutlu sayının bölüm ve geri kalanını oluşturur. |
DivRem(UInt64, UInt64) |
İmzasız iki 64 bit sayının bölüm ve geri kalanını oluşturur. |
DivRem(UInt32, UInt32) |
İki imzasız 32 bit sayının bölüm ve geri kalanını üretir. |
DivRem(UInt16, UInt16) |
İki imzasız 16 bit sayının bölüm ve geri kalanını oluşturur. |
DivRem(SByte, SByte) |
İki imzalı 8 bit sayının geri kalanını ve bölüm oluşturur. |
DivRem(Int64, Int64) |
İki imzalı 64 bit sayının geri kalanını ve bölüm oluşturur. |
DivRem(Int32, Int32) |
İki imzalı 32 bit sayının geri kalanını ve bölüm oluşturur. |
DivRem(Int16, Int16) |
İki imzalı 16 bit sayının geri kalanını ve bölüm oluşturur. |
DivRem(Byte, Byte) |
İki imzasız 8 bit sayının bölüm ve geri kalanını üretir. |
DivRem(IntPtr, IntPtr) |
İmzalı iki yerel boyutlu sayının geri kalanını ve bölüm oluşturur. |
DivRem(Int64, Int64, Int64)
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
İki 64 bit imzalı tamsayının bölüm değerini hesaplar ve kalan değeri bir çıkış parametresinde döndürür.
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
Parametreler
- a
- Int64
Kar payı.
- b
- Int64
Bölen.
- result
- Int64
Bu yöntem döndürdüğünde, kalanı içerir.
Döndürülenler
Belirtilen sayıların bölüm.
Özel durumlar
b
sıfırdır.
Örnekler
Aşağıdaki örnekte DivRem(Int64, Int64, Int64) yöntemi gösterilmektedir.
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
open System
// Define several positive and negative dividends.
let dividends =
[ Int64.MaxValue; 13952; 0; -14032; Int64.MinValue ]
// Define one positive and one negative divisor.
let divisors = [ 2000; -2000 ]
for divisor in divisors do
for dividend in dividends do
let quotient, remainder = Math.DivRem(dividend, divisor)
printfn $@"{dividend:N0} \ {divisor:N0} = {quotient:N0}, remainder {remainder:N0}"
// 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
Açıklamalar
Kalan değer,
Ayrıca bkz.
Şunlara uygulanır
DivRem(Int32, Int32, Int32)
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
İki adet 32 bit imzalı tamsayının çekirdeğini hesaplar ve kalan değeri bir çıkış parametresinde döndürür.
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
Parametreler
- a
- Int32
Kar payı.
- b
- Int32
Bölen.
- result
- Int32
Bu yöntem döndürdüğünde, kalanı içerir.
Döndürülenler
Belirtilen sayıların bölüm.
Özel durumlar
b
sıfırdır.
Örnekler
Aşağıdaki örnekte DivRem(Int32, Int32, Int32) yöntemi gösterilmektedir.
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
open System
// Define several positive and negative dividends.
let dividends =
[ Int32.MaxValue; 13952; 0; -14032; Int32.MinValue ]
// Define one positive and one negative divisor.
let divisors = [ 2000; -2000 ]
for divisor in divisors do
for dividend in dividends do
let quotient, remainder = Math.DivRem(dividend, divisor)
printfn $@"{dividend:N0} \ {divisor:N0} = {quotient:N0}, remainder {remainder:N0}"
// 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
Açıklamalar
Kalan değer,
Ayrıca bkz.
Şunlara uygulanır
DivRem(UIntPtr, UIntPtr)
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
Önemli
Bu API, CLS uyumlu değildir.
İmzalanmamış iki yerel boyutlu sayının bölüm ve geri kalanını oluşturur.
public:
static ValueTuple<UIntPtr, UIntPtr> DivRem(UIntPtr left, UIntPtr right);
[System.CLSCompliant(false)]
public static (nuint Quotient, nuint Remainder) DivRem (nuint left, nuint right);
[System.CLSCompliant(false)]
public static (UIntPtr Quotient, UIntPtr Remainder) DivRem (UIntPtr left, UIntPtr right);
[<System.CLSCompliant(false)>]
static member DivRem : unativeint * unativeint -> ValueTuple<unativeint, unativeint>
Public Shared Function DivRem (left As UIntPtr, right As UIntPtr) As ValueTuple(Of UIntPtr, UIntPtr)
Parametreler
- left
-
UIntPtr
nuint
unativeint
Kar payı.
- right
-
UIntPtr
nuint
unativeint
Bölen.
Döndürülenler
Belirtilen sayıların bölüm ve geri kalanı.
- Öznitelikler
Şunlara uygulanır
DivRem(UInt64, UInt64)
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
Önemli
Bu API, CLS uyumlu değildir.
İmzasız iki 64 bit sayının bölüm ve geri kalanını oluşturur.
public:
static ValueTuple<System::UInt64, System::UInt64> DivRem(System::UInt64 left, System::UInt64 right);
[System.CLSCompliant(false)]
public static (ulong Quotient, ulong Remainder) DivRem (ulong left, ulong right);
[<System.CLSCompliant(false)>]
static member DivRem : uint64 * uint64 -> ValueTuple<uint64, uint64>
Public Shared Function DivRem (left As ULong, right As ULong) As ValueTuple(Of ULong, ULong)
Parametreler
- left
- UInt64
Kar payı.
- right
- UInt64
Bölen.
Döndürülenler
Belirtilen sayıların bölüm ve geri kalanı.
- Öznitelikler
Şunlara uygulanır
DivRem(UInt32, UInt32)
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
Önemli
Bu API, CLS uyumlu değildir.
İki imzasız 32 bit sayının bölüm ve geri kalanını üretir.
public:
static ValueTuple<System::UInt32, System::UInt32> DivRem(System::UInt32 left, System::UInt32 right);
[System.CLSCompliant(false)]
public static (uint Quotient, uint Remainder) DivRem (uint left, uint right);
[<System.CLSCompliant(false)>]
static member DivRem : uint32 * uint32 -> ValueTuple<uint32, uint32>
Public Shared Function DivRem (left As UInteger, right As UInteger) As ValueTuple(Of UInteger, UInteger)
Parametreler
- left
- UInt32
Kar payı.
- right
- UInt32
Bölen.
Döndürülenler
Belirtilen sayıların bölüm ve geri kalanı.
- Öznitelikler
Şunlara uygulanır
DivRem(UInt16, UInt16)
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
Önemli
Bu API, CLS uyumlu değildir.
İki imzasız 16 bit sayının bölüm ve geri kalanını oluşturur.
public:
static ValueTuple<System::UInt16, System::UInt16> DivRem(System::UInt16 left, System::UInt16 right);
[System.CLSCompliant(false)]
public static (ushort Quotient, ushort Remainder) DivRem (ushort left, ushort right);
[<System.CLSCompliant(false)>]
static member DivRem : uint16 * uint16 -> ValueTuple<uint16, uint16>
Public Shared Function DivRem (left As UShort, right As UShort) As ValueTuple(Of UShort, UShort)
Parametreler
- left
- UInt16
Kar payı.
- right
- UInt16
Bölen.
Döndürülenler
Belirtilen sayıların bölüm ve geri kalanı.
- Öznitelikler
Şunlara uygulanır
DivRem(SByte, SByte)
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
Önemli
Bu API, CLS uyumlu değildir.
İki imzalı 8 bit sayının geri kalanını ve bölüm oluşturur.
public:
static ValueTuple<System::SByte, System::SByte> DivRem(System::SByte left, System::SByte right);
[System.CLSCompliant(false)]
public static (sbyte Quotient, sbyte Remainder) DivRem (sbyte left, sbyte right);
[<System.CLSCompliant(false)>]
static member DivRem : sbyte * sbyte -> ValueTuple<sbyte, sbyte>
Public Shared Function DivRem (left As SByte, right As SByte) As ValueTuple(Of SByte, SByte)
Parametreler
- left
- SByte
Kar payı.
- right
- SByte
Bölen.
Döndürülenler
Belirtilen sayıların bölüm ve geri kalanı.
- Öznitelikler
Şunlara uygulanır
DivRem(Int64, Int64)
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
İki imzalı 64 bit sayının geri kalanını ve bölüm oluşturur.
public:
static ValueTuple<long, long> DivRem(long left, long right);
public static (long Quotient, long Remainder) DivRem (long left, long right);
static member DivRem : int64 * int64 -> ValueTuple<int64, int64>
Public Shared Function DivRem (left As Long, right As Long) As ValueTuple(Of Long, Long)
Parametreler
- left
- Int64
Kar payı.
- right
- Int64
Bölen.
Döndürülenler
Belirtilen sayıların bölüm ve geri kalanı.
Şunlara uygulanır
DivRem(Int32, Int32)
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
İki imzalı 32 bit sayının geri kalanını ve bölüm oluşturur.
public:
static ValueTuple<int, int> DivRem(int left, int right);
public static (int Quotient, int Remainder) DivRem (int left, int right);
static member DivRem : int * int -> ValueTuple<int, int>
Public Shared Function DivRem (left As Integer, right As Integer) As ValueTuple(Of Integer, Integer)
Parametreler
- left
- Int32
Kar payı.
- right
- Int32
Bölen.
Döndürülenler
Belirtilen sayıların bölüm ve geri kalanı.
Şunlara uygulanır
DivRem(Int16, Int16)
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
İki imzalı 16 bit sayının geri kalanını ve bölüm oluşturur.
public:
static ValueTuple<short, short> DivRem(short left, short right);
public static (short Quotient, short Remainder) DivRem (short left, short right);
static member DivRem : int16 * int16 -> ValueTuple<int16, int16>
Public Shared Function DivRem (left As Short, right As Short) As ValueTuple(Of Short, Short)
Parametreler
- left
- Int16
Kar payı.
- right
- Int16
Bölen.
Döndürülenler
Belirtilen sayıların bölüm ve geri kalanı.
Şunlara uygulanır
DivRem(Byte, Byte)
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
İki imzasız 8 bit sayının bölüm ve geri kalanını üretir.
public:
static ValueTuple<System::Byte, System::Byte> DivRem(System::Byte left, System::Byte right);
public static (byte Quotient, byte Remainder) DivRem (byte left, byte right);
static member DivRem : byte * byte -> ValueTuple<byte, byte>
Public Shared Function DivRem (left As Byte, right As Byte) As ValueTuple(Of Byte, Byte)
Parametreler
- left
- Byte
Kar payı.
- right
- Byte
Bölen.
Döndürülenler
Belirtilen sayıların bölüm ve geri kalanı.
Şunlara uygulanır
DivRem(IntPtr, IntPtr)
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
- Kaynak:
- Math.cs
İmzalı iki yerel boyutlu sayının geri kalanını ve bölüm oluşturur.
public:
static ValueTuple<IntPtr, IntPtr> DivRem(IntPtr left, IntPtr right);
public static (nint Quotient, nint Remainder) DivRem (nint left, nint right);
public static (IntPtr Quotient, IntPtr Remainder) DivRem (IntPtr left, IntPtr right);
static member DivRem : nativeint * nativeint -> ValueTuple<nativeint, nativeint>
Public Shared Function DivRem (left As IntPtr, right As IntPtr) As ValueTuple(Of IntPtr, IntPtr)
Parametreler
- left
-
IntPtr
nint
nativeint
Kar payı.
- right
-
IntPtr
nint
nativeint
Bölen.
Döndürülenler
Belirtilen sayıların bölüm ve geri kalanı.