কম্পিউটার

C++ এ সংখ্যা হিসেবে 0 আছে এমন সংখ্যা গণনা করুন


আমাদের একটি সংখ্যা N দেওয়া হয়েছে। লক্ষ্য হল সেই সংখ্যাগুলি খুঁজে বের করা যেগুলির সংখ্যা হিসাবে 0 আছে এবং সীমা [1,N] এর মধ্যে রয়েছে৷

আমরা 10 থেকে N পর্যন্ত সংখ্যা অতিক্রম করে এটি করব (1 থেকে 9 পর্যন্ত চেক করার দরকার নেই) এবং প্রতিটি সংখ্যার জন্য আমরা একটি while লুপ ব্যবহার করে প্রতিটি সংখ্যা পরীক্ষা করব। যদি কোন সংখ্যা শূন্য বৃদ্ধির গণনা হিসাবে পাওয়া যায় এবং পরবর্তী সংখ্যায় চলে যান অন্যথায় সংখ্যাটি চেক করতে সংখ্যাটি 10 ​​দ্বারা কমিয়ে দিন যতক্ষণ না সংখ্যা>0 হয়।

উদাহরণ দিয়ে বোঝা যাক।

ইনপুট

N=11

আউটপুট

Numbers from 1 to N with 0 as digit: 1

ব্যাখ্যা

Starting from i=10 to i<=11
Only 10 has 0 as a digit. No need to check the range [1,9].

ইনপুট

N=100

আউটপুট

Numbers from 1 to N with 0 as digit: 10

ব্যাখ্যা

10, 20, 30, 40, 50, 60, 70, 80, 90, 100. Ten numbers have 0 as digits.

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

  • আমরা একটি পূর্ণসংখ্যা N.

    নিই
  • ফাংশন haveZero(int n) প্যারামিটার হিসাবে n নেয় এবং সংখ্যা হিসাবে 0 সহ সংখ্যার গণনা প্রদান করে

  • এই ধরনের সংখ্যার জন্য প্রাথমিক পরিবর্তনশীল গণনা 0 হিসাবে নিন।

  • লুপ ব্যবহার করে সংখ্যার সীমা অতিক্রম করে। i=10 থেকে i=n

  • এখন প্রতিটি সংখ্যার জন্য num=i, while loop ব্যবহার করে num%10==0 চেক করুন, যদি মিথ্যা হয় তাহলে 10 দিয়ে ভাগ করুন এবং num>0

    পর্যন্ত পরবর্তী সংখ্যায় যান
  • সত্য হলে আরও পরীক্ষা করা বন্ধ করুন, লুপ করার সময় গণনা বৃদ্ধি করুন এবং বিরতি করুন।

  • সমস্ত লুপ গণনার শেষে 1 থেকে N এর মধ্যে সংখ্যা হিসাবে 0 সহ মোট সংখ্যা থাকবে।

  • ফলাফল হিসাবে গণনা ফেরত দিন।

উদাহরণ

#include <bits/stdc++.h>
using namespace std;
int haveZero(int n){
   int count = 0;
   for (int i = 1; i <= n; i++) {
      int num = i;
      while(num>1){
         int digit=num%10;
         if (digit == 0){
            count++;
            break;
         }
         else
            { num=num/10; }
      }
   }
   return count;
}
int main(){
   int N = 200;
   cout <<"Numbers from 1 to N with 0 as digit: "<<haveZero(N);
   return 0;
}

আউটপুট

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

উৎপন্ন করবে
Numbers from 1 to N with 0 as digit: 29

  1. সংখ্যাগুলি সর্বাধিক N প্রদত্ত সংখ্যা C++ এ সেট করা হয়েছে

  2. C++ এ একটি প্রদত্ত পরিসরে ফ্যাক্টরিয়াল সংখ্যা গণনা করুন

  3. C++ এ অনন্য সংখ্যার সাথে সংখ্যা গণনা করুন

  4. 1 থেকে n পর্যন্ত সংখ্যাগুলি গণনা করুন যেগুলির সংখ্যা C++ এ 4 আছে