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

C++-এ বাইনারি থেকে ডেসিমেল কনভার্সন প্রোগ্রাম

একটি বাইনারি নম্বর ইনপুট হিসেবে দেওয়া থাকলে, সেটি ডেসিমেল নম্বরে কনভার্ট করতে হবে।

কম্পিউটারে ডেসিমেল নম্বর বেস ১০-এ রিপ্রেজেন্ট করা হয় এবং বাইনারি নম্বর বেস ২-এ কারণ এতে শুধু ০ ও ১ দুটি বাইনারি ডিজিট থাকে। ডেসিমেল নম্বর হতে পারে ০-৯ যেকোনো ডিজিট।

বাইনারি থেকে ডেসিমেল কনভার্ট করতে হলে ডানদিক থেকে বামদিক রিমেইন্ডার দিয়ে ডিজিট এক্সট্র্যাক্ট করে ২-এর পাওয়ারের সাথে গুণ করতে হবে (পাওয়ার ০ থেকে শুরু করে ডিজিট সংখ্যা - ১ পর্যন্ত) এবং সব গুণফল যোগ করে চূড়ান্ত ডেসিমেল মান পেতে হবে।

নিচে বাইনারি থেকে ডেসিমেল কনভার্সনের চিত্রগত উপস্থাপনা দেওয়া হলো:

C++-এ বাইনারি থেকে ডেসিমেল কনভার্সন প্রোগ্রাম

উদাহরণ

Input: 1010
0 ডেসিমেলে: 0 X 2^0 = 0
1 ডেসিমেলে: 1 X 2^1 = 2
0 ডেসিমেলে: 0 X 2^2 = 0
1 ডেসিমেলে: 1 X 2^3 = 8
Output: total = 0 + 2 + 0 + 8 = 10

আলগরিদম

Start
Step1 -> Declare function to convert binary to decimal
    int convert(string str)
    set string n = str
    set int val = 0
    set int temp = 1
    set int len = n.length()
    Loop For int i = len - 1 i >= 0 i--
        IF n[i] == '1'
            Set val += temp
        End
        Set temp = temp * 2
    End
    return val
Step 2 -> In main()
    Set string val = "11101"
    Call convert(val)
Stop

C++ প্রোগ্রাম উদাহরণ

#include <iostream>
#include <string>
using namespace std;

//convert binary to decimal
int convert(string str) {
    string n = str;
    int val = 0;
    int temp = 1;
    int len = n.length();
    for (int i = len - 1; i >= 0; i--) {
        if (n[i] == '1')
            val += temp;
        temp = temp * 2;
    }
    return val;
}

int main() {
    string val = "11101";
    cout<

আউটপুট

11101 after converion into deciaml : 29
  1. C++-এ অক্টাল থেকে ডেসিমেল কনভার্সন প্রোগ্রাম

  2. C++-এ ডেসিমেল থেকে হেক্সাডেসিমেল কনভার্সন প্রোগ্রাম

  3. C++-এ ডেসিমেল থেকে বাইনারি কনভার্সন প্রোগ্রাম

  4. C++-এ পিরামিডের ভলিউম বের করার প্রোগ্রাম