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

C# में 0 से विभाजन पर इन्फिनिटी या एक्सेप्शन?

C# में पूर्णांक (इंटीजर) डिवीजन बाय जीरो पर DivideByZeroException फेंका जाता है। फ्लोटिंग-पॉइंट डिवीजन बाय जीरो Infinity या NaN लौटाता है।

इंटीजर डिवीजन - एक्सेप्शन


using System;

namespace ErrorHandlingApplication {
    class DivNumbers {
        int result;
        
        public void Division(int num1, int num2) {
            try {
                result = num1 / num2;
            } catch (DivideByZeroException e) {
                Console.WriteLine("अपवाद पकड़ा गया: {0}", e);
            } finally {
                Console.WriteLine("परिणाम: {0}", result);
            }
        }
        
        static void Main(string[] args) {
            DivNumbers d = new DivNumbers();
            d.Division(25, 0);
            Console.ReadKey();
        }
    }
}

आउटपुट


अपवाद पकड़ा गया: System.DivideByZeroException: Attempted to divide by zero.
परिणाम: 0

फ्लोटिंग-पॉइंट डिवीजन - इन्फिनिटी


double d1 = 10.0 / 0.0;  // Double.PositiveInfinity
double d2 = -10.0 / 0.0; // Double.NegativeInfinity
double d3 = 0.0 / 0.0;   // Double.NaN

Console.WriteLine(d1); // Infinity
Console.WriteLine(d2); // -Infinity
Console.WriteLine(d3); // NaN

Decimal डिवीजन - एक्सेप्शन


decimal dec = 10m / 0m; // DivideByZeroException फेंकता है

सारांश तालिका

डेटा टाइप0 से विभाजन
int, long, short, byteDivideByZeroException
decimalDivideByZeroException
float, doubleInfinity / -Infinity / NaN

सर्वोत्तम अभ्यास: विभाजन से पहले डिवाइजर की जांच करें या try-catch का उपयोग करें।

  1. 6G: यह क्या है और कब उम्मीद करें 6G: यह क्या है और कब उम्मीद करें

    दुनिया भर में 5G नेटवर्क अभी भी तैनात किए जा रहे हैं और दुनिया के कई क्षेत्र अभी भी 4G और यहां तक कि 3G नेटवर्क का उपयोग कर रहे हैं, ऐसे में 6G शब्द का इस्तेमाल थोड़ा जल्दी लगता है। आखिरकार, जब अपेक्षाकृत कम लोग 5G नेटवर्क का उपयोग कर सकते हैं, तो 6G नेटवर्क का हमारे लिए क्या उपयोग है? उस ने कहा, प्

  1. जब मैं एक्सेप्शन थ्रो करता हूं तो जावास्क्रिप्ट स्टैक ट्रेस कैसे प्राप्त करूं? जब मैं एक्सेप्शन थ्रो करता हूं तो जावास्क्रिप्ट स्टैक ट्रेस कैसे प्राप्त करूं?

    जावास्क्रिप्ट स्टैक ट्रेस प्राप्त करने के लिए, बस अपने कोड में निम्नलिखित जोड़ें। यह स्टैक ट्रेस प्रदर्शित करेगा:उदाहरण<html>    <head>       <script>          function stackTrace() {             var er

  1. JavaScript Infinity प्रॉपर्टी JavaScript Infinity प्रॉपर्टी

    JavaScript infinity प्रॉपर्टी अनंत (infinity) प्रदर्शित करती है यदि फ्लोटिंग-पॉइंट नंबर की ऊपरी सीमा पार हो जाती है और -infinity यदि निचली सीमा पार हो गई है। उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewpo