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

C#-এ ডেসিমেলকে অন্য বেসে (বাইনারি, অক্টাল, হেক্সা) কনভার্ট করা

ডেসিমেল সংখ্যাকে অন্য বেসে (বাইনারি, অক্টাল, হেক্সাডেসিমেল) কনভার্ট করার জন্য স্ট্যাক (Stack) ডেটা স্ট্রাকচার ব্যবহার করা একটি ক্লাসিক অ্যালগরিদম। প্রতিবার বেস দিয়ে ভাগ করে রিমাইন্ডার স্ট্যাকে পুশ করা হয়, তারপর পপ করে ফলাফল পাওয়া যায়।

উদাহরণ: জেনারিক বেস কনভার্টার

using System;
using System.Collections.Generic;

class Demo {
    static void Main() {
        int n = 45;
        int baseNum = 2; // বাইনারির জন্য ২, অক্টালের জন্য ৮, হেক্সার জন্য ১৬

        Stack s = new Stack();
        
        do {
            int remainder = n % baseNum;
            // হেক্সাডেসিমেলের জন্য ১০-১৫ হলে A-F ব্যবহার করুন
            s.Push(remainder);
            n /= baseNum;
        } while (n != 0);

        Console.Write("ফলাফল (বেস " + baseNum + "): ");
        while (s.Count > 0) {
            Console.Write(s.Pop());
        }
        Console.WriteLine();
    }
}

আউটপুট (বাইনারি)

ফলাফল (বেস 2): 101101

বিল্ট-ইন মেথড (আধুনিক পদ্ধতি)

int number = 45;
Console.WriteLine(Convert.ToString(number, 2)); // বাইনারি: 101101
Console.WriteLine(Convert.ToString(number, 8)); // অক্টাল: 55
Console.WriteLine(Convert.ToString(number, 16)); // হেক্সা: 2D

সুপারিশ: প্রোডাকশন কোডে Convert.ToString(value, base) ব্যবহার করুন। স্ট্যাক বেসড অ্যালগরিদম শেখার উদ্দেশ্যে ভালো।

  1. জাভা প্রোগ্রাম: ডেসিমাল থেকে অক্টালে রূপান্তর

  2. একক জাভা প্রোগ্রামে একটি বেস থেকে অন্যান্য বেসে রূপান্তর

  3. হেক্সাডেসিমেল স্ট্রিংকে দশমিকে রূপান্তর করার পাইথন প্রোগ্রাম

  4. পাইথনে দ্রুত ডেসিমেলকে অন্যান্য বেসে রূপান্তর করা