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, byte | DivideByZeroException |
| decimal | DivideByZeroException |
| float, double | Infinity / -Infinity / NaN |
सर्वोत्तम अभ्यास: विभाजन से पहले डिवाइजर की जांच करें या try-catch का उपयोग करें।