কম্পিউটার

N-এর চেয়ে কম সমস্ত সংখ্যা প্রিন্ট করার জন্য পুনরাবৃত্তিমূলক প্রোগ্রাম যা শুধুমাত্র C++ এ 1 বা 3 সংখ্যা নিয়ে গঠিত


ধনাত্মক পূর্ণসংখ্যা টাইপ মান সংরক্ষণ করে N হিসাবে আমাদের একটি পূর্ণসংখ্যা ভেরিয়েবল দেওয়া হয়েছে। কাজটি হল প্রদত্ত মান N এর চেয়ে কম সংখ্যা 1, 3 বা উভয়ের সংমিশ্রণ সহ সমস্ত সংখ্যা পুনরাবৃত্তভাবে প্রিন্ট করা।

আসুন এর জন্য বিভিন্ন ইনপুট আউটপুট পরিস্থিতি দেখি -

ইনপুট − int num =40

আউটপুট − N-এর চেয়ে কম সমস্ত সংখ্যা প্রিন্ট করার পুনরাবৃত্তিমূলক প্রোগ্রাম যা শুধুমাত্র 1 বা 3 সংখ্যা নিয়ে গঠিত:33 31 13 11 3 1

ব্যাখ্যা − আমাদের একটি ধনাত্মক পূর্ণসংখ্যার মান দেওয়া হয়েছে 40 একটি পরিবর্তনশীল সংখ্যায় সংরক্ষিত। এখন, আমরা পুনরাবৃত্তভাবে 1, 3 বা উভয় সংখ্যাযুক্ত সমস্ত সংখ্যা খুঁজে বের করব এবং 40-এর কম সংখ্যাগুলি হল 1, 3, 11, 13, 31, 33

ইনপুট − int num =5

আউটপুট − N-এর চেয়ে কম সমস্ত সংখ্যা প্রিন্ট করার জন্য পুনরাবৃত্তিমূলক প্রোগ্রাম যা শুধুমাত্র 1 বা 3 সংখ্যা নিয়ে গঠিত:3 1

ব্যাখ্যা − আমাদের একটি ধনাত্মক পূর্ণসংখ্যার মান দেওয়া হয়েছে 40 একটি পরিবর্তনশীল সংখ্যায় সংরক্ষিত। এখন, আমরা পুনরাবৃত্তভাবে 1, 3 বা উভয় সংখ্যা বিশিষ্ট সমস্ত সংখ্যা এবং 5are 1 এবং 3-এর চেয়ে কম সেই সংখ্যাগুলি খুঁজে বের করব৷

ইনপুট − int num =1

আউটপুট - ভুল ইনপুট

ব্যাখ্যা − আমাদেরকে একটি ধনাত্মক পূর্ণসংখ্যার মান দেওয়া হয়েছে 1 একটি পরিবর্তনশীল সংখ্যায় সংরক্ষিত। এখন, আমরা পুনরাবৃত্তভাবে 1, 3 বা উভয় সংখ্যা বিশিষ্ট সমস্ত সংখ্যা খুঁজে বের করব এবং সেই সংখ্যাগুলি 1 এর চেয়ে কম 0 কারণ 1 এর চেয়ে কম একমাত্র ধনাত্মক পূর্ণসংখ্যা 0 তাই, আউটপুট ভুল ইনপুট।

নিম্নলিখিত প্রোগ্রামে ব্যবহৃত পদ্ধতি

  • সংখ্যা হিসাবে একটি পূর্ণসংখ্যা ভেরিয়েবল ইনপুট করুন। ফাংশনের প্যারামিটার হিসেবে num পাস করে এটিকে Recursive_Numbers(num) ফাংশনে পাস করুন।

  • Recursive_Numbers(num)

    ফাংশনের ভিতরে
    • টাইপ বুলের চেক হিসাবে একটি ভেরিয়েবল ঘোষণা করুন এবং এটি 1 দিয়ে সেট করুন।

    • 0-এর বেশি হলে 0-এর বেশি হলে 0-এর বেশি হলে শুরু করুন এবং 1-এ চেক করুন। সংখ্যা টেম্প % 10-এ সেট করুন।

    • চেক করুন যদি ডিজিট 1 এর সমান না হয় এবং ডিজিট 3 এর সমান না হয় তারপর চেক 0 এ সেট করুন। temp =temp / 10 সেট করুন।

    • চেক করুন যদি চেক 1 হয় তাহলে প্রিন্ট নম্বর।

    • Recursive_Numbers(num - 1) ফাংশনে একটি পুনরাবৃত্ত কল করুন

উদাহরণ

#include <iostream>
using namespace std;
void Recursive_Numbers(int num){
   bool check = 1;
   int temp = num;
   if(num > 0){
      while(temp > 0 && check == 1){
         int digit = temp % 10;
         if (digit != 1 && digit != 3){
            check = 0;
         }
         temp = temp / 10;
      }
      if(check == 1){
         cout<< num << " ";
      }
      Recursive_Numbers(num - 1);
   }
}
int main(){
   int num = 40;
   if(num <= 1){
      cout<<"Wrong input";
   }
   else{
      cout<<"Recursive program to print all numbers less than N which consist of digits 1 or 3 only are: ";
      Recursive_Numbers(num);
   }
   return 0;
}

আউটপুট

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

Recursive program to print all numbers less than N which consist of digits 1 or 3 only are: 33 31
13 11 3 1

  1. C++ এ একটি মিন হিপে x মানের চেয়ে কম সব নোড প্রিন্ট করুন

  2. O(n) জটিলতায় 100 টির কম সংখ্যার সাজানোর জন্য C++ প্রোগ্রাম

  3. পাইথন প্রোগ্রাম একটি তালিকা থেকে শুধুমাত্র সংখ্যা বের করে যা কিছু নির্দিষ্ট সংখ্যা আছে

  4. পাইথন প্রোগ্রাম একটি পরিসরে সমস্ত সংখ্যা খুঁজে বের করতে যা নিখুঁত বর্গক্ষেত্র এবং সংখ্যার সমস্ত অঙ্কের যোগফল 10 এর কম