This documentation is archived and is not being maintained.

Decimal.Divide Method

Divides two specified Decimal values.

[Visual Basic]
Public Shared Function Divide( _
   ByVal d1 As Decimal, _
   ByVal d2 As Decimal _
) As Decimal
[C#]
public static decimal Divide(
 decimal d1,
 decimal d2
);
[C++]
public: static Decimal Divide(
 Decimal d1,
 Decimal d2
);
[JScript]
public static function Divide(
   d1 : Decimal,
 d2 : Decimal
) : Decimal;

Parameters

d1
A Decimal (the dividend).
d2
A Decimal (the divisor).

Return Value

The Decimal that is the result of dividing d1 by d2.

Exceptions

Exception Type Condition
DivideByZeroException d2 is zero.
OverflowException The return value (that is, the quotient) is less than MinValue or greater than MaxValue.

Example

[Visual Basic, C#, C++] The following code example creates several pairs of Decimal values and calculates their quotients with the Divide method.

[Visual Basic] 
' Example of the Decimal.Multiply, Decimal.Divide, and 
' Decimal.Remainder methods. 
Imports System
Imports Microsoft.VisualBasic

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

    ' Display Decimal parameters and their product, quotient, and 
    ' remainder.
    Sub ShowDecimalProQuoRem( Left as Decimal, Right as Decimal )

        Console.WriteLine( )
        Console.WriteLine( dataFmt, "Decimal Left", Left )
        Console.WriteLine( dataFmt, "Decimal Right", Right )
        Console.WriteLine( dataFmt, _
            "Decimal.Multiply( Left, Right )", _
            Decimal.Multiply( Left, Right ) )
        Console.WriteLine( dataFmt, _
            "Decimal.Divide( Left, Right )", _
            Decimal.Divide( Left, Right ) )
        Console.WriteLine( dataFmt, _
            "Decimal.Remainder( Left, Right )", _
            Decimal.Remainder( Left, Right ) )
    End Sub

    Sub Main( )
        Console.WriteLine( "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." )

        ' Create pairs of Decimal objects.
        ShowDecimalProQuoRem( 1000D, 7D ) 
        ShowDecimalProQuoRem( -1000D, 7D ) 
        ShowDecimalProQuoRem( _
            new Decimal( 1230000000, 0, 0, False, 7 ), _
            0.0012300D )
        ShowDecimalProQuoRem( 12345678900000000D, _
            0.0000000012345678D )
        ShowDecimalProQuoRem( 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

[C#] 
// Example of the decimal.Multiply, decimal.Divide, and 
// decimal.Remainder methods. 
using System;
using Microsoft.VisualBasic;

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

    // Display decimal parameters and their product, quotient, and 
    // remainder.
    public static void ShowDecimalProQuoRem( decimal Left, decimal Right )
    {
        Console.WriteLine( );
        Console.WriteLine( dataFmt, "decimal Left", Left );
        Console.WriteLine( dataFmt, "decimal Right", Right );
        Console.WriteLine( dataFmt, "decimal.Multiply( Left, Right )", 
            decimal.Multiply( Left, Right ) );
        Console.WriteLine( dataFmt, "decimal.Divide( Left, Right )", 
            decimal.Divide( Left, Right ) );
        Console.WriteLine( dataFmt, "decimal.Remainder( Left, Right )", 
            decimal.Remainder( Left, Right ) );
    }

    public static void Main( )
    {
        Console.WriteLine( "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." );

        // Create pairs of decimal objects.
        ShowDecimalProQuoRem( 1000M, 7M );
        ShowDecimalProQuoRem( -1000M, 7M );
        ShowDecimalProQuoRem( 
            new decimal( 1230000000, 0, 0, false, 7 ), 0.0012300M );
        ShowDecimalProQuoRem( 12345678900000000M, 
            0.0000000012345678M );
        ShowDecimalProQuoRem( 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
*/

[C++] 
// Example of the Decimal::Multiply, Decimal::Divide, and 
// Decimal::Remainder methods. 
#using <mscorlib.dll>
using namespace System;

// Display Decimal parameters and their product, quotient, and 
// remainder.
void ShowDecimalProQuoRem( Decimal Left, Decimal Right )
{
    String* dataFmt = S"{0,-35}{1,31}";

    Console::WriteLine( );
    Console::WriteLine( dataFmt, S"Decimal Left", __box( Left ) );
    Console::WriteLine( dataFmt, S"Decimal Right", __box( Right ) );
    Console::WriteLine( dataFmt, S"Decimal::Multiply( Left, Right )", 
        __box( Decimal::Multiply( Left, Right ) ) );
    Console::WriteLine( dataFmt, S"Decimal::Divide( Left, Right )", 
        __box( Decimal::Divide( Left, Right ) ) );
    Console::WriteLine( dataFmt, S"Decimal::Remainder( Left, Right )", 
        __box( Decimal::Remainder( Left, Right ) ) );
}

void main( )
{
    Console::WriteLine( S"This example of the \n" 
        S"  Decimal::Multiply( Decimal, Decimal ), \n" 
        S"  Decimal::Divide( Decimal, Decimal ), and \n" 
        S"  Decimal::Remainder( Decimal, Decimal ) \n" 
        S"methods generates the following output. It displays " 
        S"the product, \nquotient, and remainder of several " 
        S"pairs of Decimal objects." );

    // Create pairs of Decimal objects.
    ShowDecimalProQuoRem( Decimal::Parse( S"1000" ), 
        Decimal::Parse( S"7" ) );
    ShowDecimalProQuoRem( Decimal::Parse( S"-1000" ), 
        Decimal::Parse( S"7" ) );
    ShowDecimalProQuoRem( 
        Decimal( 1230000000, 0, 0, false, 7 ), 
        Decimal::Parse( S"0.0012300" ) );
    ShowDecimalProQuoRem( Decimal::Parse( S"12345678900000000" ), 
        Decimal::Parse( S"0.0000000012345678" ) );
    ShowDecimalProQuoRem( Decimal::Parse( S"123456789.0123456789" ), 
        Decimal::Parse( S"123456789.1123456789" ) );
}

/*
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
*/

[JScript] No example is available for JScript. To view a Visual Basic, C#, or C++ example, click the Language Filter button Language Filter in the upper-left corner of the page.

Requirements

Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family, .NET Compact Framework, Common Language Infrastructure (CLI) Standard

See Also

Decimal Structure | Decimal Members | System Namespace | Add | Subtract | Multiply

Show: