কম্পিউটার

C++-এ N-তম ভদ্র সংখ্যা


একটি ভদ্র সংখ্যা হল একটি ধনাত্মক সংখ্যা যা 2 বা তার বেশি ধারাবাহিক ধনাত্মক সংখ্যার যোগফল হিসাবে লেখা যেতে পারে।

ভদ্র সংখ্যার সিরিজ হল

3 5 6 7 9 10 11 12 13 14...

n-ম নম্র সংখ্যা বের করার জন্য একটি সূত্র আছে। সূত্রটি হল n + log2 (n + লগ2 (n))। ডিফল্ট লগ বেস e দিয়ে গণনা করে। আমাদের বেস 2 ব্যবহার করে গণনা করতে হবে। বেস e দিয়ে লগের মান পেতে log(2) দিয়ে ডিফল্ট লগ ফলাফল ভাগ করুন।

অ্যালগরিদম

  • n-ম ভদ্র সংখ্যার অ্যালগরিদম সোজা।
  • সংখ্যা N শুরু করুন।
  • ন-ম ভদ্র সংখ্যা গণনা করতে উপরের সূত্রটি ব্যবহার করুন।
  • n-ম ভদ্র সংখ্যা গণনা করার আগে n-এর মান 1 দ্বারা বৃদ্ধি নিশ্চিত করুন৷

বাস্তবায়ন

C++

-এ উপরের অ্যালগরিদমের বাস্তবায়ন নিচে দেওয়া হল
#include <bits/stdc++.h>
using namespace std;
double getNthPoliteNumber(double n) {
   n += 1;
   return n + (log((n + (log(n) / log(2.0))))) / log(2.0);
}
int main() {
   double n = 10;
   cout << (int)getNthPoliteNumber(n) << endl;
   return 0;
}

আউটপুট

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

14

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

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

  3. C++ এ N-তম ট্রিবোনাচি নম্বর

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