Decimal.Remainder Method

Microsoft Silverlight will reach end of support after October 2021. Learn more.

Computes the remainder after dividing two Decimal values.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

Syntax

'Declaration
Public Shared Function Remainder ( _
    d1 As Decimal, _
    d2 As Decimal _
) As Decimal
public static decimal Remainder(
    decimal d1,
    decimal d2
)

Parameters

Return Value

Type: System.Decimal
The Decimal that is the remainder after dividing d1 by d2.

Exceptions

Exception Condition
DivideByZeroException

d2 is zero.

OverflowException

The return value is less than MinValue or greater than MaxValue.

Examples

The following code example creates several pairs of Decimal values and calculates the remainders resulting from dividing the two values with the Remainder method.

' Example of the Decimal.Multiply, Decimal.Divide, and 
' Decimal.Remainder methods. 

Module Example

   Const dataFmt As String = "{0,-35}{1,31}"

   ' Display Decimal parameters and their product, quotient, and 
   ' remainder.
   Sub ShowDecimalProQuoRem(ByVal outputBlock As System.Windows.Controls.TextBlock, ByVal Left As Decimal, ByVal Right As Decimal)

      outputBlock.Text &= vbCrLf
      outputBlock.Text &= String.Format(dataFmt, "Decimal Left", Left) & vbCrLf
      outputBlock.Text &= String.Format(dataFmt, "Decimal Right", Right) & vbCrLf
      outputBlock.Text &= String.Format(dataFmt, _
          "Decimal.Multiply( Left, Right )", _
          Decimal.Multiply(Left, Right)) & vbCrLf
      outputBlock.Text &= String.Format(dataFmt, _
          "Decimal.Divide( Left, Right )", _
          Decimal.Divide(Left, Right)) & vbCrLf
      outputBlock.Text &= String.Format(dataFmt, _
          "Decimal.Remainder( Left, Right )", _
          Decimal.Remainder(Left, Right)) & vbCrLf
   End Sub

   Public Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock)
      outputBlock.Text &= "This example of the " & vbCrLf & _
          "  Decimal.Multiply( Decimal, Decimal ), " & vbCrLf & _
          "  Decimal.Divide( Decimal, Decimal ), and " & vbCrLf & _
          "  Decimal.Remainder( Decimal, Decimal ) " & vbCrLf & _
          "methods generates the following output. It displays " & _
          "the product, " & vbCrLf & "quotient, and remainder " & _
          "of several pairs of Decimal objects." & vbCrLf

      ' Create pairs of Decimal objects.
      ShowDecimalProQuoRem(outputBlock, 1000D, 7D)
      ShowDecimalProQuoRem(outputBlock, -1000D, 7D)
      ShowDecimalProQuoRem(outputBlock,  _
          New Decimal(1230000000, 0, 0, False, 7), _
          0.00123D)
      ShowDecimalProQuoRem(outputBlock, 12345678900000000D, _
          0.0000000012345678D)
      ShowDecimalProQuoRem(outputBlock, 123456789.0123456789D, _
          123456789.1123456789D)
   End Sub
End Module

' This example of the
'   Decimal.Multiply( Decimal, Decimal ),
'   Decimal.Divide( Decimal, Decimal ), and
'   Decimal.Remainder( Decimal, Decimal )
' methods generates the following output. It displays the product,
' quotient, and remainder of several pairs of Decimal objects.
' 
' Decimal Left                                                  1000
' Decimal Right                                                    7
' Decimal.Multiply( Left, Right )                               7000
' Decimal.Divide( Left, Right )       142.85714285714285714285714286
' Decimal.Remainder( Left, Right )                                 6
' 
' Decimal Left                                                 -1000
' Decimal Right                                                    7
' Decimal.Multiply( Left, Right )                              -7000
' Decimal.Divide( Left, Right )      -142.85714285714285714285714286
' Decimal.Remainder( Left, Right )                                -6
' 
' Decimal Left                                           123.0000000
' Decimal Right                                              0.00123
' Decimal.Multiply( Left, Right )                     0.151290000000
' Decimal.Divide( Left, Right )                            100000.00
' Decimal.Remainder( Left, Right )                                 0
' 
' Decimal Left                                     12345678900000000
' Decimal Right                                   0.0000000012345678
' Decimal.Multiply( Left, Right )          15241577.6390794200000000
' Decimal.Divide( Left, Right )       10000000729000059778004901.796
' Decimal.Remainder( Left, Right )                    0.000000000983
' 
' Decimal Left                                  123456789.0123456789
' Decimal Right                                 123456789.1123456789
' Decimal.Multiply( Left, Right )     15241578765584515.651425087878
' Decimal.Divide( Left, Right )       0.9999999991899999933660999449
' Decimal.Remainder( Left, Right )              123456789.0123456789
// Example of the decimal.Multiply, decimal.Divide, and 
// decimal.Remainder methods. 
using System;

class Example
{
   const string dataFmt = "{0,-35}{1,31}";

   // Display decimal parameters and their product, quotient, and 
   // remainder.
   public static void ShowDecimalProQuoRem(System.Windows.Controls.TextBlock outputBlock, decimal Left, decimal Right)
   {
      outputBlock.Text += "\n";
      outputBlock.Text += String.Format(dataFmt, "decimal Left", Left) + "\n";
      outputBlock.Text += String.Format(dataFmt, "decimal Right", Right) + "\n";
      outputBlock.Text += String.Format(dataFmt, "decimal.Multiply( Left, Right )",
          decimal.Multiply(Left, Right)) + "\n";
      outputBlock.Text += String.Format(dataFmt, "decimal.Divide( Left, Right )",
          decimal.Divide(Left, Right)) + "\n";
      outputBlock.Text += String.Format(dataFmt, "decimal.Remainder( Left, Right )",
          decimal.Remainder(Left, Right)) + "\n";
   }

   public static void Demo(System.Windows.Controls.TextBlock outputBlock)
   {
      outputBlock.Text += "This example of the \n" +
          "  decimal.Multiply( decimal, decimal ), \n" +
          "  decimal.Divide( decimal, decimal ), and \n" +
          "  decimal.Remainder( decimal, decimal ) \n" +
          "methods generates the following output. It displays " +
          "the product, \nquotient, and remainder of several " +
          "pairs of decimal objects." + "\n";

      // Create pairs of decimal objects.
      ShowDecimalProQuoRem(outputBlock, 1000M, 7M);
      ShowDecimalProQuoRem(outputBlock, -1000M, 7M);
      ShowDecimalProQuoRem(outputBlock, 
          new decimal(1230000000, 0, 0, false, 7), 0.0012300M);
      ShowDecimalProQuoRem(outputBlock, 12345678900000000M,
          0.0000000012345678M);
      ShowDecimalProQuoRem(outputBlock, 123456789.0123456789M,
          123456789.1123456789M);
   }
}

/*
This example of the
  decimal.Multiply( decimal, decimal ),
  decimal.Divide( decimal, decimal ), and
  decimal.Remainder( decimal, decimal )
methods generates the following output. It displays the product,
quotient, and remainder of several pairs of decimal objects.

decimal Left                                                  1000
decimal Right                                                    7
decimal.Multiply( Left, Right )                               7000
decimal.Divide( Left, Right )       142.85714285714285714285714286
decimal.Remainder( Left, Right )                                 6

decimal Left                                                 -1000
decimal Right                                                    7
decimal.Multiply( Left, Right )                              -7000
decimal.Divide( Left, Right )      -142.85714285714285714285714286
decimal.Remainder( Left, Right )                                -6

decimal Left                                           123.0000000
decimal Right                                            0.0012300
decimal.Multiply( Left, Right )                   0.15129000000000
decimal.Divide( Left, Right )                               100000
decimal.Remainder( Left, Right )                                 0

decimal Left                                     12345678900000000
decimal Right                                   0.0000000012345678
decimal.Multiply( Left, Right )          15241577.6390794200000000
decimal.Divide( Left, Right )       10000000729000059778004901.796
decimal.Remainder( Left, Right )                    0.000000000983

decimal Left                                  123456789.0123456789
decimal Right                                 123456789.1123456789
decimal.Multiply( Left, Right )     15241578765584515.651425087878
decimal.Divide( Left, Right )       0.9999999991899999933660999449
decimal.Remainder( Left, Right )              123456789.0123456789
*/

Version Information

Silverlight

Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Xbox 360, Windows Phone OS 7.0

Platforms

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.

See Also

Reference