একটি দশমিক সংখ্যাকেও এর বাইনারি আকারে রূপান্তর করা যেতে পারে। একটি দশমিক সংখ্যাকে বাইনারি সংখ্যায় রূপান্তর করতে, আমাদের সংখ্যাটিকে 2 দ্বারা ভাগ করতে হবে যতক্ষণ না এটি 0 বা 1 এ পৌঁছায়। এবং প্রতিটি ধাপে, অবশিষ্টগুলিকে বিপরীত ক্রমে বাইনারি সমতুল্য সংখ্যা গঠনের জন্য আলাদাভাবে সংরক্ষণ করা হয়।
এই অ্যালগরিদমে, আমরা পুনরাবৃত্ত পদ্ধতি অনুসরণ করব। স্ট্যাক ডেটা স্ট্রাকচার ব্যবহার না করেই এটি আমাদের সমস্যা সমাধান করতে সাহায্য করবে। বাস্তবায়নে, আমরা জানি যে একটি ফাংশনের পুনরাবৃত্তি অভ্যন্তরীণ স্ট্যাকের অনুসরণ করবে। আমরা সেই স্ট্যাক ব্যবহার করে আমাদের কাজ পরিবেশন করব।
ইনপুট এবং আউটপুট
Input: Decimal number 56 Output: Binary Equivalent: 111000
অ্যালগরিদম
decToBin(decimal)
ইনপুট :দশমিক সংখ্যা।
আউটপুট: বাইনারি সমতুল্য স্ট্রিং।
Begin if decimal = 0 OR 1, then insert decimal into the binary string return decToBin(decimal / 2) insert (decimal mod 2) into the binary string. End
উদাহরণ
#include<iostream> using namespace std; void decToBin(int dec) { if(dec == 1 || dec == 0) { cout << dec; //print either 0 or 1 as dec return; } decToBin(dec/2); //divide the number by 2 and find decimal again cout << dec % 2; //after returning print the value in reverse order } main() { int dec; cout<<"Enter decimal number: "; cin >> dec; cout << "Binary Equivalent: "; decToBin(dec); }
আউটপুট
Enter decimal number: 56 Binary Equivalent: 111000