কম্পিউটার সিস্টেমে, বাইনারি সংখ্যা বাইনারি সংখ্যা পদ্ধতিতে প্রকাশ করা হয় যখন অক্টাল সংখ্যা অক্টাল সংখ্যা পদ্ধতিতে থাকে। বাইনারি সংখ্যা বেস ২-তে থাকে এবং অক্টাল সংখ্যা বেস ৮-এ।
বাইনারি সংখ্যা এবং তাদের সংশ্লিষ্ট অক্টাল সংখ্যার উদাহরণ নিচে দেওয়া হলো:
| বাইনারি সংখ্যা | অক্টাল সংখ্যা |
|---|---|
| 01010 | 12 |
| 00111 | 7 |
| 11001 | 31 |
| 10000 | 20 |
উদাহরণ
#include <iostream>
#include <cmath>
using namespace std;
int BinaryToOctal(int binaryNum) {
int octalNum = 0, decimalNum = 0, count = 0;
while(binaryNum != 0) {
decimalNum += (binaryNum % 10) * pow(2, count);
++count;
binaryNum /= 10;
}
count = 1;
while (decimalNum != 0) {
octalNum += (decimalNum % 8) * count;
decimalNum /= 8;
count *= 10;
}
return octalNum;
}
int OctalToBinary(int octalNum) {
int decimalNum = 0, binaryNum = 0, count = 0;
while(octalNum != 0) {
decimalNum += (octalNum % 10) * pow(8, count);
++count;
octalNum /= 10;
}
count = 1;
while (decimalNum != 0) {
binaryNum += (decimalNum % 2) * count;
decimalNum /= 2;
count *= 10;
}
return binaryNum;
}
int main() {
int binaryNum = 1011, octalNum = 25;
cout << "Binary to Octal" << endl;
cout << "Binary number: " << binaryNum << endl;
cout << "Octal number: " << BinaryToOctal(binaryNum) << endl;
cout << "Octal to Binary" << endl;
cout << "Octal number: " << octalNum << endl;
cout << "Binary number: " << OctalToBinary(octalNum) << endl;
return 0;
}
আউটপুট
Binary to Octal Binary number: 1011 Octal number: 13 Octal to Binary Octal number: 25 Binary number: 10101
উপরোক্ত প্রোগ্রামে দুটি ফাংশন রয়েছে: BinaryToOctal() এবং OctalToBinary()।
BinaryToOctal() প্রদত্ত বাইনারি সংখ্যকে অক্টাল সংখ্যায় রূপান্তর করে। এটি প্রথমে বাইনারি সংখ্যকে দশমিক সংখ্যায় রূপান্তর করে, তারপর দশমিক সংখ্যকে অক্টাল সংখ্যায় রূপান্তর করে। নিচের কোড স্নিপেটে এটি দেখা যাচ্ছে:
int BinaryToOctal(int binaryNum) {
int octalNum = 0, decimalNum = 0, count = 0;
while(binaryNum != 0) {
decimalNum += (binaryNum % 10) * pow(2, count);
++count;
binaryNum /= 10;
}
count = 1;
while (decimalNum != 0) {
octalNum += (decimalNum % 8) * count;
decimalNum /= 8;
count *= 10;
}
return octalNum;
}
OctalToBinary() প্রদত্ত অক্টাল সংখ্যকে বাইনারি সংখ্যায় রূপান্তর করে। এটি প্রথমে অক্টাল সংখ্যকে দশমিক সংখ্যায় রূপান্তর করে, তারপর দশমিক সংখ্যকে বাইনারি সংখ্যায় রূপান্তর করে। নিচের কোড স্নিপেটে এটি দেখা যাচ্ছে:
int OctalToBinary(int octalNum) {
int decimalNum = 0, binaryNum = 0, count = 0;
while(octalNum != 0) {
decimalNum += (octalNum % 10) * pow(8, count);
++count;
octalNum /= 10;
}
count = 1;
while (decimalNum != 0) {
binaryNum += (decimalNum % 2) * count;
decimalNum /= 2;
count *= 10;
}
return binaryNum;
}
main() ফাংশনে, বাইনারি এবং অক্টাল সংখ্যা দেওয়া হয়েছে। তারপর BinaryToOctal() এবং OctalToBinary() কল করে তাদের সংশ্লিষ্ট অক্টাল এবং বাইনারি সংখ্যা গণনা করা হয়েছে। এটি নিচে দেখানো হলো:
int main() {
int binaryNum = 1011, octalNum = 25;
cout << "Binary to Octal" << endl;
cout << "Binary number: " << binaryNum << endl;
cout << "Octal number: " << BinaryToOctal(binaryNum) << endl;
cout << "Octal to Binary" << endl;
cout << "Octal number: " << octalNum << endl;
cout << "Binary number: " << OctalToBinary(octalNum) << endl;
return 0;
}