কম্পিউটার টিউটোরিয়াল

ডবল বেস প্যালিনড্রোম C++ প্রোগ্রামে


এই টিউটোরিয়ালে আমরা একটি প্রোগ্রাম লিখব যা যাচাই করবে দেওয়া সংখ্যাটি দুটি সংখ্যা পদ্ধতিতে প্যালিনড্রোম কিনা।

একটি সংখ্যা এবং অন্য একটি সংখ্যা পদ্ধতির বেস দেওয়া আছে। আমাদের যাচাই করতে হবে যে দেওয়া সংখ্যাটি দশমিক সংখ্যা পদ্ধতিতে এবং দেওয়া সংখ্যা পদ্ধতিতে প্যালিনড্রোম কিনা।

সমস্যা সমাধানের ধাপগুলো:

  • সংখ্যা এবং সংখ্যা পদ্ধতির বেস ইনিশিয়ালাইজ করুন।

  • দেওয়া সংখ্যাটি দশমিক সংখ্যা পদ্ধতিতে প্যালিনড্রোম কিনা তা যাচাই করুন।

  • সংখ্যাটিকে অন্য সংখ্যা পদ্ধতিতে স্ট্রিং ফরম্যাটে কনভার্ট করুন।

  • কনভার্ট করা সংখ্যাটি প্যালিনড্রোম কিনা তা যাচাই করুন।

  • যদি সংখ্যাটি দুটি সংখ্যা পদ্ধতিতে প্যালিনড্রোম হয়, তবে Yes প্রিন্ট করুন অন্যথায় No।

উদাহরণ

নিচে কোডটি দেওয়া হলো:

#include <bits/stdc++.h> using namespace std; string integer_to_string(int n, int base) {    string str;    while (n > 0) {       int digit = n % base;       n /= base;       str.push_back(digit + '0');    }    return str; } string isDoubleBasePalidrome(int n, int k) {    int temp = n;    int number_reverse = 0;    while (temp > 0) {       number_reverse = temp % 10 + number_reverse * 10;       temp /= 10;    }    if (number_reverse == n) {       // converting to base k       string str = integer_to_string(n, k);       string str_copy = str;       // reversing number in base k       reverse(str.begin(), str.end());       if (str == str_copy) {          return "Yes";       }    }    return "No"; } int main() {    int n = 313, k = 2;    cout << isDoubleBasePalidrome(n, k) << endl;    return 0; }

আউটপুট

উপরের কোডটি রান করলে নিচের ফলাফল পাওয়া যাবে:

Yes

উপসংহার

টিউটোরিয়াল সম্পর্কে কোনো প্রশ্ন থাকলে কমেন্ট সেকশনে জানান।


  1. সি++ প্রোগ্রাম: দ্বি-অভিশ্লেষণ (Double Integration) গণনা

  2. প্যালিনড্রোম (Palindrome) নম্বর চেক করার C++ প্রোগ্রাম

  3. সংখ্যার ঘাত (Power) বের করার C++ প্রোগ্রাম (রিকার্সিভ ও নন-রিকার্সিভ)

  4. C++ প্রোগ্রাম: সংখ্যা উল্টানো (Reverse a Number)