কম্পিউটার

ভাগ্যবান সংখ্যা


ভাগ্যবান সংখ্যা হল কিছু বিশেষ পূর্ণসংখ্যা। মৌলিক সংখ্যা থেকে, কিছু বিশেষ সংখ্যা তাদের অবস্থান দ্বারা বাদ দেওয়া হয়। তাদের মানের পরিবর্তে, তাদের অবস্থানের জন্য, সংখ্যাগুলি বাদ দেওয়া হয়। যে সংখ্যাগুলি মুছে ফেলা হয় না, তারাই ভাগ্যবান সংখ্যা৷

নম্বর মুছে ফেলা কিছু নিয়ম অনুসরণ করে। প্রথমে, প্রতিটি দ্বিতীয় নম্বর মুছে ফেলা হয়, তারপরে, সমস্ত 3য় নম্বর মুছে ফেলা হয় ইত্যাদি।

এখানে কিছু উদাহরণ -

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 (1 – 25 all)
1 3 5 7 9 11 13 15 17 19 21 23 25 (deleting all 2nd numbers)
1 3 7 9 13 15 19 21 25 (All 3rd numbers are deleted, starting from 5)
1 3 7 9 13 15 21 25 (All 7th numbers are deleted starting from 19)

ইনপুট এবং আউটপুট

ইনপুট:ভাগ্যবান কিনা তা পরীক্ষা করার জন্য একটি নম্বর রাখুন। ধরা যাক সংখ্যাটি 13 আউটপুট:13 একটি ভাগ্যবান সংখ্যা।

অ্যালগরিদম

isLuckyNumber(number)

ইনপুট - একটি সংখ্যা।

আউটপুট - নম্বরটি ভাগ্যবান কিনা তা পরীক্ষা করুন৷

Begin
   counter := 2 (It is static data, not be initialized again in recursion call)
   if counter > n, then
      return 1
   if n mod counter = 0, then
      return 0
   n := n – (n / counter)
   counter := counter + 1
   isLuckyNumber(n)
End

উদাহরণ

#include <iostream>
using namespace std;

int counter = 2;    //used during recursion

bool isLuckyNumber(int n) {
   if(counter > n)
      return 1;
   if(n%counter == 0)
      return 0;
   
   n -= n/counter;    //n will be next position for recursion
   counter++;
   return isLuckyNumber(n);
}

int main() {
   int x = 13;

   if(isLuckyNumber(x))
      cout << x<<" is a lucky number.";
   else
      cout << x<<" is not a lucky number.";
}

আউটপুট

13 is a lucky number.

  1. সি++ এ ডুডেনি নম্বর

  2. C# এ সংখ্যা

  3. পাইথনে একটি সংখ্যা একটি ট্রোজান নম্বর কিনা তা পরীক্ষা করুন

  4. পাইথনে এলোমেলো সংখ্যা