सी # में मुद्रा के लिए उपयोग करने के लिए सबसे अच्छा डेटाटाइप दशमलव है। दशमलव प्रकार एक 128-बिट डेटा प्रकार है जो वित्तीय और मौद्रिक गणना के लिए उपयुक्त है। दशमलव प्रकार 1.0 * 10^-28 से लेकर लगभग 7.9 * 10^28 तक 28-29 महत्वपूर्ण अंकों के साथ मूल्यों का प्रतिनिधित्व कर सकता है। दशमलव चर को प्रारंभ करने के लिए, प्रत्यय m या M का उपयोग करें।
दशमलव b =2.1m;
नीचे दिया गया उदाहरण दशमलव का न्यूनतम और अधिकतम मान दिखाता है।
उदाहरण
using System; namespace DemoApplication{ public class Program{ public static void Main(){ Console.WriteLine($"Deciaml Min Value: {decimal.MinValue}"); Console.WriteLine($"Deciaml Max Value: {decimal.MaxValue}"); Console.ReadLine(); } } }
आउटपुट
Deciaml Min Value: -79228162514264337593543950335Deciaml Max Value: 79228162514264337593543950335
दशमलव प्रकार के मानों का परिमित समुच्चय (-1)^s * c * 10^-e के रूप में होता है, जहां चिह्न s 0 या 1 होता है, गुणांक c 0 <=*c* <2^ द्वारा दिया जाता है 96, और स्केल ई ऐसा है कि 0 <=e <=28. दशमलव प्रकार हस्ताक्षरित शून्य, अनंत, या NaN का समर्थन नहीं करता है। एक दशमलव को 96-बिट पूर्णांक के रूप में दर्शाया जाता है जिसे दस की शक्ति से बढ़ाया जाता है। 1.0m से कम के निरपेक्ष मान वाले दशमलव के लिए, मान 28वें दशमलव स्थान पर सटीक है, लेकिन आगे नहीं।
1.0m से अधिक या उसके बराबर निरपेक्ष मान वाले दशमलव के लिए, मान 28 या 29 अंकों के लिए सटीक है। फ्लोट और डबल डेटा प्रकारों के विपरीत, दशमलव भिन्नात्मक संख्याओं जैसे कि 0.1 को दशमलव प्रतिनिधित्व में बिल्कुल प्रदर्शित किया जा सकता है। फ्लोट और डबल अभ्यावेदन में, ऐसी संख्याएं अक्सर अनंत भिन्न होती हैं, जो उन अभ्यावेदन को राउंड-ऑफ त्रुटियों के लिए अधिक प्रवण बनाती हैं।
दशमलव प्रकार को फ्लोट और डबल पर पसंद किया जाता है क्योंकि इसमें फ्लोट और डबल दोनों की तुलना में अधिक सटीकता और छोटी रेंज होती है।
उदाहरण
आइए एक उदाहरण पर विचार करें जहां अमेरिकी डॉलर को भारतीय रुपए में परिवर्तित किया जाता है।
using System; namespace DemoApplication{ public class Program{ public static void Main(){ decimal usd = 2.5m; Console.WriteLine($"USD: {usd}"); decimal inrOfOneUSD = 75.04m; Console.WriteLine($"INR value of one USD: {inrOfOneUSD}"); decimal inr = usd * inrOfOneUSD; Console.WriteLine($"INR value: {inr}"); Console.ReadLine(); } } }
आउटपुट
उपरोक्त कोड का आउटपुट है
USD: 2.5 INR value of one USD: 75.04 INR value: 187.600