বাইনারি (ฐান ২) এবং ডেসিমেল (ฐান ১০) পারস্পরিক কনভারশন।
উদাহরণ টেবিল
| ডেসিমেল | বাইনারি |
|---|---|
| 10 | 01010 |
| 7 | 00111 |
| 25 | 11001 |
| 16 | 10000 |
উদাহরণ কোড
#include <iostream>
using namespace std;
void DecimalToBinary(int n) {
int binaryNumber[100];
int num = n;
int i = 0;
while (n > 0) {
binaryNumber[i] = n % 2;
n = n / 2;
i++;
}
cout << "Binary form of " << num << " is ";
for (int j = i - 1; j >= 0; j--)
cout << binaryNumber[j];
cout << endl;
}
int BinaryToDecimal(int n) {
int decimalNumber = 0;
int base = 1;
int temp = n;
while (temp) {
int lastDigit = temp % 10;
temp = temp / 10;
decimalNumber += lastDigit * base;
base = base * 2;
}
cout << "Decimal form of " << n << " is " << decimalNumber << endl;
}
int main() {
DecimalToBinary(23);
BinaryToDecimal(10101);
return 0;
}
আউটপুট
Binary form of 23 is 10111 Decimal form of 10101 is 21
ব্যাখ্যা
DecimalToBinary
- বারবার ২ দিয়ে ভাগ, ভাগশেষ (0/1) অ্যারেতে স্টোর।
- অ্যারে উল্টে প্রিন্ট করলে বাইনারি ম inför।
BinaryToDecimal
- ইনপুট নম্বরকে ডেসিমেল ইন্টিজার হিসেবে নেওয়া হয়েছে (যেমন 10101)।
lastDigit = temp % 10— লাস্ট ডিজিট বের করা।decimalNumber += lastDigit * base— বেস ১, ২, ৪, ৮... বেড়ায়।
সতর্কতা: বাইনারি ইনপুট ডেসিমেল ইন্টিজার হিসেবে পাস করা হয়েছে (10101 → দশ হাজার একশ এক)। স্ট্রিং ইনপুট নেওয়া বেশি সঠিক।