কম্পিউটার

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


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

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

একটি বাইনারি সংখ্যাকে দশমিক সংখ্যায় রূপান্তর করতে আমরা একটি অবশিষ্টাংশের মাধ্যমে ডান থেকে বাম থেকে শুরু করে অঙ্কগুলি বের করব এবং তারপর 0 থেকে শুরু করে 2 এর শক্তি দিয়ে গুন করব এবং (অঙ্কের সংখ্যা) - 1 পর্যন্ত 1 দ্বারা বৃদ্ধি করব যেটি চূড়ান্ত দশমিক মান পেতে গুণিত মান যোগ করতে থাকে।

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

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

উদাহরণ

Input-: 1010
   0 will be converted to a decimal number by -: 0 X 2^0 = 0
   1 have corresponding binary equivalent of 3 digit -: 1 X 2^1 = 2
   0 have corresponding binary equivalent of 3 digit -: 0 X 2^2 = 0
   1 have corresponding binary equivalent of 3 digit -: 1 X 2^3 = 8
Output-: total = 0 + 2 + 0 + 8 = 10

অ্যালগরিদম

Start
Step1-> Declare function to convert binary to decimal
   int convert(string str)
   set string n = str
   set int val = 0
   set int temp = 1
   set int len = n.length()
   Loop For int i = len - 1 i >= 0 i—
      IF n[i] == '1'
         Set val += temp
      End
      Set temp = temp * 2
   End
   return val
Step 2-> In main()
   Set string val = "11101"
   Call convert(val)
Stop

উদাহরণ

#include <iostream>
#include <string>
using namespace std;
//convert binary to decimal
int convert(string str) {
   string n = str;
   int val = 0;
   int temp = 1;
   int len = n.length();
   for (int i = len - 1; i >= 0; i--) {
      if (n[i] == '1')
      val += temp;
      temp = temp * 2;
   }
   return val;
}
int main() {
   string val = "11101";
   cout<<val<<" after converion into deciaml : "<<convert(val);
}

আউটপুট

যদি আমরা উপরের কোডটি চালাই তবে এটি নিম্নলিখিত আউটপুট তৈরি করবে

11101 after converion into deciaml : 29

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

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

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

  4. C++ এ পিরামিডের আয়তনের জন্য প্রোগ্রাম