কম্পিউটার

C++ এ কাপরেকার নম্বর


এই টিউটোরিয়ালে, আমরা একটি প্রোগ্রাম লিখতে যাচ্ছি যেটি প্রদত্ত নম্বরটি কাপ্রেকার নম্বর কিনা তা খুঁজে বের করবে। বা না।

একটি নম্বর নিন। সেই সংখ্যার বর্গ নির্ণয় কর। সংখ্যাটিকে দুটি ভাগে ভাগ করুন। যদি দুটি অংশের যোগফল মূল সংখ্যার সমান হয়, তবে সংখ্যাটিকে বলা হয় কাপ্রেকার সংখ্যা .

আসুন সমস্যা সমাধানের পদক্ষেপগুলি দেখি৷

  • n শুরু করুন।
  • n এর বর্গ খুঁজুন।
  • n এর বর্গক্ষেত্রে সংখ্যার সংখ্যা খুঁজুন এবং এটি একটি চলকের মধ্যে সংরক্ষণ করুন।
  • 10, 100, 1000, ইত্যাদি দিয়ে n এর বর্গকে ভাগ করুন, যতক্ষণ না সংখ্যা গণনা হয়।
    • সেই অংশগুলির যেকোনো একটির যোগফল n এর সমান কি না তা পরীক্ষা করুন।
  • প্রত্যাবর্তন সত্য যদি তারা সমান হয় অন্য মিথ্যা .

উদাহরণ

আসুন কোডটি দেখি।

#include<bits/stdc++.h>
using namespace std;
bool isKaprekarNumber(int n) {
   if (n == 1) {
      return true;
   }
   int nSquare = n * n, digitsCount = 0;
   while (nSquare) {
      digitsCount++;
      nSquare /= 10;
   }
   nSquare = n * n;
   for (int i = 1; i < digitsCount; i++) {
      int parts = pow(10, i);
      if (parts == n) {
         continue;
      }
      int sum = nSquare / parts + nSquare % parts;
      if (sum == n) {
         return true;
      }
   }
   return false;
}
int main() {
   int n = 25;
   string result = isKaprekarNumber(n) ? "True" : "False";
   cout << result << endl;
   return 0;
}

আউটপুট

আপনি যদি উপরের কোডটি চালান, তাহলে আপনি নিম্নলিখিত ফলাফল পাবেন।

False

উপসংহার

টিউটোরিয়ালে আপনার কোন প্রশ্ন থাকলে মন্তব্য বিভাগে উল্লেখ করুন।


  1. C++ এ মিতব্যয়ী নম্বর

  2. C++ পেন্টাটোপ নম্বর

  3. C++ এ ছিটমহলের সংখ্যা

  4. C++ এ অ্যাডাম নম্বর