কম্পিউটার

C++ এ দশমিক থেকে বাইনারি রূপান্তরের জন্য প্রোগ্রাম


একটি ইনপুট হিসাবে একটি দশমিক সংখ্যার সাথে প্রদত্ত, কাজটি হল প্রদত্ত দশমিক সংখ্যাটিকে একটি বাইনারি সংখ্যায় রূপান্তর করা৷

কম্পিউটারে দশমিক সংখ্যাকে বেস 10 দিয়ে এবং বাইনারি সংখ্যাটি বেস 2 দিয়ে উপস্থাপন করা হয় কারণ এতে মাত্র দুটি বাইনারি ডিজিট 0 এবং 1 রয়েছে যেখানে দশমিক সংখ্যা 0 - 9 থেকে শুরু হওয়া যেকোনো সাংখ্যিক সংখ্যা হতে পারে।

একটি দশমিক সংখ্যাকে একটি বাইনারি সংখ্যায় রূপান্তর করতে প্রদত্ত ধাপগুলি অনুসরণ করুন −

  • প্রথমে প্রদত্ত সংখ্যাটিকে রূপান্তর নম্বরের ভিত্তি মান দিয়ে ভাগ করুন যেমন 42 কে 2 দ্বারা ভাগ করা কারণ আমাদের 42 কে একটি বাইনারি সংখ্যায় রূপান্তর করতে হবে যার ভিত্তি 2 আছে এবং তারপর একটি ভাগফল পেতে হবে এবং এটি সংরক্ষণ করতে হবে। অবশিষ্ট 0 থাকলে বিটটিকে 0 অন্য 1 হিসাবে সংরক্ষণ করুন।
  • প্রাপ্ত ভাগফলকে বাইনারি সংখ্যার মূল মান দিয়ে ভাগ করুন যা 2 এবং বিটগুলি সংরক্ষণ করতে থাকুন।
  • সঞ্চিত বিটগুলিতে ডান স্থানান্তর করতে থাকুন
  • পদক্ষেপটি পুনরাবৃত্তি করুন যতক্ষণ না অবশিষ্টাংশ অবিভাজ্য বাম থাকে

একটি দশমিক সংখ্যাকে একটি বাইনারি সংখ্যায় রূপান্তর করার সচিত্র উপস্থাপনা নীচে দেওয়া হল৷

C++ এ দশমিক থেকে বাইনারি রূপান্তরের জন্য প্রোগ্রাম

উদাহরণ

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

  1. হেক্সাডেসিমেল থেকে দশমিকের জন্য C++ প্রোগ্রাম

  2. C++ এ অক্টাল থেকে দশমিক রূপান্তরের জন্য প্রোগ্রাম

  3. C++ এ দশমিক থেকে হেক্সাডেসিমেল রূপান্তরের জন্য প্রোগ্রাম

  4. C++ এ বাইনারি থেকে দশমিক রূপান্তরের জন্য প্রোগ্রাম