BigInteger.Division(BigInteger, BigInteger) 演算子

定義

整数除算を使用して、指定された BigInteger 値をもう 1 つの指定された BigInteger 値で除算します。Divides a specified BigInteger value by another specified BigInteger value by using integer division.

public:
 static System::Numerics::BigInteger operator /(System::Numerics::BigInteger dividend, System::Numerics::BigInteger divisor);
public static System.Numerics.BigInteger operator / (System.Numerics.BigInteger dividend, System.Numerics.BigInteger divisor);
static member ( / ) : System.Numerics.BigInteger * System.Numerics.BigInteger -> System.Numerics.BigInteger
Public Shared Operator / (dividend As BigInteger, divisor As BigInteger) As BigInteger

パラメーター

dividend
BigInteger

被除数。The value to be divided.

divisor
BigInteger

除数。The value to divide by.

戻り値

除算の結果 (整数)。The integral result of the division.

例外

divisor が 0 (ゼロ) です。divisor is 0 (zero).

次の例では、BigInteger 値の配列を作成します。The following example creates an array of BigInteger values. 次に、Divide メソッド、除算演算子 (/)、および DivRem メソッドを使用する除算演算で、各要素を商として使用します。It then uses each element as the quotient in a division operation that uses the Divide method, the division operator (/), and the DivRem method.

using System;
using System.Numerics;

public class Example
{
   public static void Main()
   {
      BigInteger divisor = BigInteger.Pow(Int64.MaxValue, 2);
      
      BigInteger[] dividends = { BigInteger.Multiply((BigInteger) Single.MaxValue, 2), 
                                 BigInteger.Parse("90612345123875509091827560007100099"), 
                                 BigInteger.One, 
                                 BigInteger.Multiply(Int32.MaxValue, Int64.MaxValue),
                                 divisor + BigInteger.One };

      // Divide each dividend by divisor in three different ways.
      foreach (BigInteger dividend in dividends)
      {
         BigInteger quotient;
         BigInteger remainder = 0;
         
         Console.WriteLine("Dividend: {0:N0}", dividend);
         Console.WriteLine("Divisor:  {0:N0}", divisor);
         Console.WriteLine("Results:");
         Console.WriteLine("   Using Divide method:     {0:N0}", 
                           BigInteger.Divide(dividend, divisor));
         Console.WriteLine("   Using Division operator: {0:N0}", 
                           dividend / divisor);
         quotient = BigInteger.DivRem(dividend, divisor, out remainder);
         Console.WriteLine("   Using DivRem method:     {0:N0}, remainder {1:N0}", 
                           quotient, remainder);

         Console.WriteLine();
      }            
   }
}
// The example displays the following output:
//    Dividend: 680,564,693,277,057,719,623,408,366,969,033,850,880
//    Divisor:  85,070,591,730,234,615,847,396,907,784,232,501,249
//    Results:
//       Using Divide method:     7
//       Using Division operator: 7
//       Using DivRem method:     7, remainder 85,070,551,165,415,408,691,630,012,479,406,342,137
//    
//    Dividend: 90,612,345,123,875,509,091,827,560,007,100,099
//    Divisor:  85,070,591,730,234,615,847,396,907,784,232,501,249
//    Results:
//       Using Divide method:     0
//       Using Division operator: 0
//       Using DivRem method:     0, remainder 90,612,345,123,875,509,091,827,560,007,100,099
//    
//    Dividend: 1
//    Divisor:  85,070,591,730,234,615,847,396,907,784,232,501,249
//    Results:
//       Using Divide method:     0
//       Using Division operator: 0
//       Using DivRem method:     0, remainder 1
//    
//    Dividend: 19,807,040,619,342,712,359,383,728,129
//    Divisor:  85,070,591,730,234,615,847,396,907,784,232,501,249
//    Results:
//       Using Divide method:     0
//       Using Division operator: 0
//       Using DivRem method:     0, remainder 19,807,040,619,342,712,359,383,728,129
//    
//    Dividend: 85,070,591,730,234,615,847,396,907,784,232,501,250
//    Divisor:  85,070,591,730,234,615,847,396,907,784,232,501,249
//    Results:
//       Using Divide method:     1
//       Using Division operator: 1
//       Using DivRem method:     1, remainder 1
Imports System.Numerics

Module Example
   Public Sub Main()
      Dim divisor As BigInteger = BigInteger.Pow(Int64.MaxValue, 2)
      
      Dim dividends() As BigInteger = { BigInteger.Multiply(CType(Single.MaxValue, BigInteger), 2), 
                                        BigInteger.Parse("90612345123875509091827560007100099"), 
                                        BigInteger.One, 
                                        BigInteger.Multiply(Int32.MaxValue, Int64.MaxValue),
                                        divisor + BigInteger.One }

      ' Divide each dividend by divisor in three different ways.
      For Each dividend As BigInteger In dividends
         Dim quotient As BigInteger
         Dim remainder As BigInteger = 0
         
         ' Divide using division operator.
         Console.WriteLine("Dividend: {0:N0}", dividend)
         Console.WriteLine("Divisor:  {0:N0}", divisor)
         Console.WriteLine("Results:")
         Console.WriteLine("   Using Divide method:     {0:N0}", 
                           BigInteger.Divide(dividend, divisor))
         Console.WriteLine("   Using Division operator: {0:N0}", 
                           dividend / divisor)
         quotient = BigInteger.DivRem(dividend, divisor, remainder)
         Console.WriteLine("   Using DivRem method:     {0:N0}, remainder {1:N0}", 
                           quotient, remainder)
         
         Console.WriteLine()         
      Next                                        
   End Sub
End Module
' The example displays the following output:
'    Dividend: 680,564,693,277,057,719,623,408,366,969,033,850,880
'    Divisor:  85,070,591,730,234,615,847,396,907,784,232,501,249
'    Results:
'       Using Divide method:     7
'       Using Division operator: 7
'       Using DivRem method:     7, remainder 85,070,551,165,415,408,691,630,012,479,406,342,137
'    
'    Dividend: 90,612,345,123,875,509,091,827,560,007,100,099
'    Divisor:  85,070,591,730,234,615,847,396,907,784,232,501,249
'    Results:
'       Using Divide method:     0
'       Using Division operator: 0
'       Using DivRem method:     0, remainder 90,612,345,123,875,509,091,827,560,007,100,099
'    
'    Dividend: 1
'    Divisor:  85,070,591,730,234,615,847,396,907,784,232,501,249
'    Results:
'       Using Divide method:     0
'       Using Division operator: 0
'       Using DivRem method:     0, remainder 1
'    
'    Dividend: 19,807,040,619,342,712,359,383,728,129
'    Divisor:  85,070,591,730,234,615,847,396,907,784,232,501,249
'    Results:
'       Using Divide method:     0
'       Using Division operator: 0
'       Using DivRem method:     0, remainder 19,807,040,619,342,712,359,383,728,129
'    
'    Dividend: 85,070,591,730,234,615,847,396,907,784,232,501,250
'    Divisor:  85,070,591,730,234,615,847,396,907,784,232,501,249
'    Results:
'       Using Divide method:     1
'       Using Division operator: 1
'       Using DivRem method:     1, remainder 1

注釈

Division メソッドは、BigInteger 値の除算演算を定義します。The Division method defines the division operation for BigInteger values. 次のようなコードが有効になります。It enables code such as the following:

BigInteger num1 = 100045632194;
BigInteger num2 = 90329434;
BigInteger quotient = num1 / num2;
Dim num1 As BigInteger = 100045632194
Dim num2 As BigInteger = 90329434
Dim quotient As BigInteger = num1 / num2

カスタム演算子と演算子のオーバーロードをサポートしない言語では、代わりに Divide メソッドを呼び出すことができます。Languages that do not support custom operators and operator overloading can call the Divide method instead.

この演算子の同等のメソッドは BigInteger.Divide(BigInteger, BigInteger)The equivalent method for this operator is BigInteger.Divide(BigInteger, BigInteger)

適用対象

こちらもご覧ください