BigInteger.Divide(BigInteger, BigInteger) Méthode

Définition

Divise une valeur BigInteger par une autre et retourne le résultat.Divides one BigInteger value by another and returns the result.

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

Paramètres

dividend
BigInteger

Valeur à diviser.The value to be divided.

divisor
BigInteger

Valeur par laquelle diviser.The value to divide by.

Retours

Quotient de la division.The quotient of the division.

Exceptions

divisor est égal à 0 (zéro).divisor is 0 (zero).

Exemples

L’exemple suivant crée un tableau de valeurs BigInteger.The following example creates an array of BigInteger values. Il utilise ensuite chaque élément comme quotient dans une opération de division qui utilise la méthode Divide, l’opérateur de division (/) et la méthode 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

Remarques

La méthode Divide effectue une division d’entiers ; tout reste qui résulte de la Division est ignoré.The Divide method performs integer division; any remainder that results from the division is discarded. Pour effectuer une division d’entier tout en conservant le reste, appelez la méthode DivRem.To perform integer division while preserving the remainder, call the DivRem method. Pour récupérer uniquement le reste, appelez la méthode Remainder.To retrieve only the remainder, call the Remainder method.

La méthode Divide peut être utilisée par les langages qui ne prennent pas en charge la surcharge d’opérateur.The Divide method can be used by languages that do not support operator overloading. Son comportement est identique à celui de la Division à l’aide de l’opérateur de division.Its behavior is identical to division using the division operator.

S’applique à

Voir aussi