একটি ইনপুট হিসাবে একটি দশমিক সংখ্যার সাথে প্রদত্ত, কাজটি হল প্রদত্ত দশমিক সংখ্যাটিকে একটি বাইনারি সংখ্যায় রূপান্তর করা৷
কম্পিউটারে দশমিক সংখ্যাকে বেস 10 দিয়ে এবং বাইনারি সংখ্যাটি বেস 2 দিয়ে উপস্থাপন করা হয় কারণ এতে মাত্র দুটি বাইনারি ডিজিট 0 এবং 1 রয়েছে যেখানে দশমিক সংখ্যা 0 - 9 থেকে শুরু হওয়া যেকোনো সাংখ্যিক সংখ্যা হতে পারে।
একটি দশমিক সংখ্যাকে একটি বাইনারি সংখ্যায় রূপান্তর করতে প্রদত্ত ধাপগুলি অনুসরণ করুন −
- প্রথমে প্রদত্ত সংখ্যাটিকে রূপান্তর নম্বরের ভিত্তি মান দিয়ে ভাগ করুন যেমন 42 কে 2 দ্বারা ভাগ করা কারণ আমাদের 42 কে একটি বাইনারি সংখ্যায় রূপান্তর করতে হবে যার ভিত্তি 2 আছে এবং তারপর একটি ভাগফল পেতে হবে এবং এটি সংরক্ষণ করতে হবে। অবশিষ্ট 0 থাকলে বিটটিকে 0 অন্য 1 হিসাবে সংরক্ষণ করুন।
- প্রাপ্ত ভাগফলকে বাইনারি সংখ্যার মূল মান দিয়ে ভাগ করুন যা 2 এবং বিটগুলি সংরক্ষণ করতে থাকুন।
- সঞ্চিত বিটগুলিতে ডান স্থানান্তর করতে থাকুন
- পদক্ষেপটি পুনরাবৃত্তি করুন যতক্ষণ না অবশিষ্টাংশ অবিভাজ্য বাম থাকে
একটি দশমিক সংখ্যাকে একটি বাইনারি সংখ্যায় রূপান্তর করার সচিত্র উপস্থাপনা নীচে দেওয়া হল৷
উদাহরণ
Input-: 42 Divide the 42 with base 2 : 42 / 2 = 0 (remainder) 21(quotient) Divide quotient with base: 21 / 2 = 1(remainder) 10(quotient) Divide quotient with base: 10 / 2 = 0(remainder) 5(quotient) Divide quotient with base: 5 / 2 = 1(remainder) 2(quotient) Divide quotient with base: 2 / 2 = 0(remainder) 1(quotient) Now reverse the bits to obtain final value. Output-: 101010
অ্যালগরিদম
Start Step 1-> declare function to convert decimal to binary int convert(int num) Loop For int i = 31 i >= 0 i— Set int k = num >> i If (k & 1) Print "1" End Else Print "0" End End Step 2-> In main() Declare and set int num = 42 Call convert(num) Stop
উদাহরণ
#include <iostream> using namespace std; //convert decimal to binary int convert(int num) { for (int i = 31; i >= 0; i--) { int k = num >> i; if (k & 1) cout << "1"; else cout << "0"; } } int main() { int num = 42; convert(num); }
আউটপুট
যদি আমরা উপরের কোডটি চালাই তবে এটি নিম্নলিখিত আউটপুট তৈরি করবে
00000000000000000000000000101010