কম্পিউটার টিউটোরিয়াল

C#-তে কারেন্সি (মুদ্রা) জন্য সেরা ডেটা টাইপ কী?

C#-তে কারেন্সি (মুদ্রা) জন্য সেরা ডেটা টাইপ হলো decimal। `decimal` টাইপ একটি ১২৮-বিট ডেটা টাইপ যা ফাইন্যানশিয়াল এবং মোনিটারি ক্যালকুলেশনের জন্য উপযুক্ত। `decimal` টাইপ ১.০ × ১০⁻²৮ থেকে প্রায় ৭.৯ × ১০²৮ পর্যন্ত মান রিপ্রেজেন্ট করতে পারে ২৮-২৯ সিগনিফিক্যান্ট ডিজিটসহ। একটি `decimal` ভেরিয়েবল ইনিশিয়ালাইজ করতে `m` বা `M` সাফিক্স ব্যবহার করতে হয়।

decimal b = 2.1m;

নিচের উদাহরণে `decimal`-এর মিন এবং ম্যাক্স ভ্যালু দেখানো হলো।

উদাহরণ

using System;

namespace DemoApplication
{
    public class Program
    {
        public static void Main()
        {
            Console.WriteLine($"Decimal Min Value: {decimal.MinValue}");
            Console.WriteLine($"Decimal Max Value: {decimal.MaxValue}");
            Console.ReadLine();
        }
    }
}

আউটপুট

Decimal Min Value: -79228162514264337593543950335
Decimal Max Value: 79228162514264337593543950335

টাইপ `decimal`-এর সসীম সেটের মানগুলোর ফর্ম হলো (-1)ˢ × c × ১₀⁻ᵉ, যেখানে সাইন s হলো ০ বা ১, কোইফিশিয়েন্ট c হলো ০ ≤ c < 2⁹⁶, এবং স্কেল e এমন যে ০ ≤ e ≤ ২৮। `decimal` টাইপ সাইনড জিরো, ইনফিনিটি, বা NaN সাপোর্ট করে না। একটি `decimal` একটি ৯৬-বিট ইন্টিজার যা টেনের ঘাত দ্বারা স্কেল করা। ১.০m-এর চেয়ে কম অ্যাবসোলিউট ভ্যালু 갖고 ডেসিমেলের জন্য, মান ২৮তম দশমিক স্থান পর্যন্ত এক্সাক্ট, কিন্তু তার পরে নয়। ১.০m বা তার চেয়ে বড় অ্যাবসোলিউট ভ্যালু 갖고 ডেসিমেলের জন্য, মান ২৮ বা ২৯ ডিজিট পর্যন্ত এক্সাক্ট। `float` এবং `double` ডেটা টাইপের বিপরীতে, `decimal` ফ্র্যাকশনাল নাম্বার যেমন ০.১ কে `decimal` রিপ্রেজেন্টেশনে এক্সাক্টলি রিপ্রেজেন্ট করা যায়। `float` এবং `double` রিপ্রেজেন্টেশনে, এহা নম্বরগুলো প্রায়শই ইনফিনিট ফ্র্যাকশন, যা সেই রিপ্রেজেন্টেশনগুলোক রাউন্ড-অফ এরর-এর জন্য অধিক ঝুঁকিপূর্ণ করে তোলে।

`decimal` টাইপ `float` এবং `double`-এর চেয়ে প্রিফার্ড কারণ এর বেশি প্রিসিশন এবং ছোট রেঞ্জ আছে `float` এবং `double`-এর চেয়ে।

উদাহরণ

চলুন একটি উদাহরণ বিবেচনা করি যেখানে US ডলার ইন্ডিয়ান রুপিয়ায় কনভার্ট করা হচ্ছে।

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
  1. ডেটা অ্যানালিসিস কী এবং ব্যবহার করার সেরা টুলস

  2. C#-এ 'new' কীওয়ার্ডের ব্যবহার

  3. C#-এ ইন্টিজারের সর্বোচ্চ সম্ভাব্য মান কত?

  4. C#-এ ডেটা টাইপ, ভ্যালু টাইপ এবং রেফারেন্স টাইপ কী?