Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C#

C# में Math.BigMul: दो 32-बिट इंट का गुणनफल (64-बिट परिणाम)


Math.BigMul(int a, int b) दो 32-बिट साइन्ड इंटीजर्स को गुणा करके **64-बिट (long) परिणाम** लौटाता है, जिससे ओवरफ्लो बचता है।

उदाहरण

using System;
using System.Globalization;

class Demo
{
    static void Main()
    {
        int one = 345272828;
        int two = 887685744;
        
        long res = Math.BigMul(one, two);
        
        Console.WriteLine("{0} * {1} = {2}", one, two, res);
    }
}

आउटपुट

345272828 * 887685744 = 306493767206164032

क्यों उपयोगी?

  • int * int → int (ओवरफ्लो होकर कट जाता है)।
  • long res = (long)a * b काम करता है लेकिन BigMul इरादा स्पष्ट करता है।
  • क्रिप्टोग्राफी, हैशिंग, बड़ी संख्या गणित में उपयोगी।

संबंधित

  • Math.MultiplyHigh (.NET 7+): केवल उच्च 64 बिट्स।
  • BigInteger (System.Numerics): असीमित परिशुद्धता।
  1. - C# में Math.Floor() मेथड

    C# में Math.Floor() मेथड का उपयोग निर्दिष्ट संख्या से कम या बराबर सबसे बड़ा अभिन्न मान लौटाने के लिए किया जाता है। सिंटैक्स public static decimal Floor (decimal val); public static double Floor (double val) ऊपर पहले सिंटैक्स के लिए, मान val डेसीमल संख्या है, जबकि दूसरे सिंटैक्स में Val डबल संख्या ह

  1. - C# में Math.Exp() मेथड

    C# में Math.Exp() मेथड का उपयोग e को निर्दिष्ट घात तक बढ़ाकर लौटाने के लिए किया जाता है। सिंटैक्स public static double Exp (double val); यहां, Val घात है। यदि Val NaN या PositiveInfinity के बराबर है, तो वह मान लौटाया जाता है। हालांकि, यदि d NegativeInfinity के बराबर है, तो 0 लौटाया जाता है। आइए Mat

  1. - C# में Math.BigMul: दो 32-बिट इंट का गुणनफल (64-बिट परिणाम)

    Math.BigMul(int a, int b) दो 32-बिट साइन्ड इंटीजर्स को गुणा करके **64-बिट (long) परिणाम** लौटाता है, जिससे ओवरफ्लो बचता है। उदाहरण using System; using System.Globalization; class Demo { static void Main() { int one = 345272828; int two = 887685744; long re