Decimal.Remainder(Decimal, Decimal) 方法

定义

计算两个 Decimal 值相除后的余数。

public:
 static System::Decimal Remainder(System::Decimal d1, System::Decimal d2);
public static decimal Remainder (decimal d1, decimal d2);
static member Remainder : decimal * decimal -> decimal
Public Shared Function Remainder (d1 As Decimal, d2 As Decimal) As Decimal

参数

d1
Decimal

被除数。

d2
Decimal

除数。

返回

d1 除以 d2 后的余数。

例外

d2 为零。

返回值小于 Decimal.MinValue 或大于 Decimal.MaxValue

示例

以下示例使用 Remainder 方法计算一系列除法运算中的余数。

using System;

public class Example
{
    public static void Main()
    {
        // Create parallel arrays of Decimals to use as the dividend and divisor.
        Decimal[] dividends = { 79m, 1000m, -1000m, 123m, 1234567800000m,
                                1234.0123m };
        Decimal[] divisors = { 11m, 7m, 7m, .00123m, 0.12345678m, 1234.5678m };

        for (int ctr = 0; ctr < dividends.Length; ctr++)
        {
           Decimal dividend = dividends[ctr];
           Decimal divisor = divisors[ctr];
           Console.WriteLine("{0:N3} / {1:N3} = {2:N3} Remainder {3:N3}", dividend,
                             divisor, Decimal.Divide(dividend, divisor),
                             Decimal.Remainder(dividend, divisor));
        }
    }
}
// The example displays the following output:
//       79.000 / 11.000 = 7.182 Remainder 2.000
//       1,000.000 / 7.000 = 142.857 Remainder 6.000
//       -1,000.000 / 7.000 = -142.857 Remainder -6.000
//       123.000 / 0.001 = 100,000.000 Remainder 0.000
//       1,234,567,800,000.000 / 0.123 = 10,000,000,000,000.000 Remainder 0.000
//       1,234.012 / 1,234.568 = 1.000 Remainder 1,234.012
open System

// Create parallel lists of Decimals to use as the dividend and divisor.
let dividends = 
    [ 79m; 1000m; -1000m; 123m; 1234567800000m; 1234.0123m ]
let divisors =
    [ 11m; 7m; 7m; 0.00123m; 0.12345678m; 1234.5678m ]

for i = 0 to dividends.Length - 1 do
    let dividend = dividends[i]
    let divisor = divisors[i]
    printfn $"{dividend:N3} / {divisor:N3} = {Decimal.Divide(dividend, divisor):N3} Remainder {Decimal.Remainder(dividend, divisor):N3}"

// The example displays the following output:
//       79.000 / 11.000 = 7.182 Remainder 2.000
//       1,000.000 / 7.000 = 142.857 Remainder 6.000
//       -1,000.000 / 7.000 = -142.857 Remainder -6.000
//       123.000 / 0.001 = 100,000.000 Remainder 0.000
//       1,234,567,800,000.000 / 0.123 = 10,000,000,000,000.000 Remainder 0.000
//       1,234.012 / 1,234.568 = 1.000 Remainder 1,234.012
Module Example
    Sub Main( )
        ' Create parallel arrays of Decimals to use as the dividend and divisor.
        Dim dividends() As Decimal = { 79d, 1000d, -1000d, 123d, 1234567800000d,
                                       1234.0123d }
        Dim divisors() As Decimal = { 11d, 7d, 7d, .00123d, 0.12345678d,
                                      1234.5678d }
        
        For ctr As Integer = 0 To dividends.Length - 1
           Dim dividend As Decimal = dividends(ctr)
           Dim divisor As Decimal = divisors(ctr)
           Console.WriteLine("{0:N3} / {1:N3} = {2:N3} Remainder {3:N3}", dividend,
                             divisor, Decimal.Divide(dividend, divisor),
                             Decimal.Remainder(dividend, divisor)) 
        Next
    End Sub
End Module 
' The example displays the following output:
'       79.000 / 11.000 = 7.182 Remainder 2.000
'       1,000.000 / 7.000 = 142.857 Remainder 6.000
'       -1,000.000 / 7.000 = -142.857 Remainder -6.000
'       123.000 / 0.001 = 100,000.000 Remainder 0.000
'       1,234,567,800,000.000 / 0.123 = 10,000,000,000,000.000 Remainder 0.000
'       1,234.012 / 1,234.568 = 1.000 Remainder 1,234.012

适用于