কম্পিউটার টিউটোরিয়াল

রেঞ্জে নিজের শূন্য-নয় অঙ্কগুলো দ্বারা বিভাজ্য সংখ্যাগুলি গণনা C++-এ


START, END রেঞ্জ দেওয়া আছে। লক্ষ্য হল [START, END] রেঞ্জে যেসব সংখ্যা নিজের শূন্য-নয় সব অঙ্ক দ্বারা বিভাজ্য, তাদের সংখ্যা বের করা।

রেঞ্জে লুপে প্রতিটি সংখ্যায় while দিয়ে অঙ্ক বের করা হয়। শূন্য-নয় অঙ্ক দ্বারা বিভাজ্য না হলে ফ্ল্যাগ ০ করা হয়। সব অঙ্ক দ্বারা বিভাজ্য হলে কাউন্ট বাড়ানো হয়।

উদাহরণ

ইনপুট: START=10, END=20

আউটপুট: শর্ত পূরণকারী সংখ্যা: ১৪

ব্যাখ্যা: ১০, ১১, ১২, ১৫, ২০ — নিজের অঙ্কগুলা দিয়ে বিভাজ্য।

প্রোগ্রামে ব্যবহৃত পদ্ধতি
  • START, END নেওয়া হয়।
  • divisiblebyDigits(int start, int end) ফাংশন কাউন্ট রিটার্ন করে।
  • রেঞ্জে লুপে while দিয়ে অঙ্ক চেক, শূন্য-নয় অঙ্ক দ্বারা বিভাজ্য কিনা দেখা হয়।
C++ কোড উদাহরণ
#include 
using namespace std;

int divisiblebyDigits(int start, int end){
    int count = 0;
    for (int i = start; i <= end; i++){
        int num = i, flag = 1;
        while(num > 0){
            int digit = num % 10;
            if(digit > 0){
                if(i % digit == 0) flag = 1;
                else { flag = 0; break; }
            }
            num /= 10;
        }
        if(flag == 1) count++;
    }
    return count;
}

int main(){
    int START = 10, END = 50;
    cout << "নিজের শূন্য-নয় অঙ্ক দ্বারা বিভাজ্য সংখ্যা: " << divisiblebyDigits(START, END);
    return 0;
}
আউটপুট

উপরোক্ত কোড রান করলে আউটপুট:

নিজের শূন্য-নয় অঙ্ক দ্বারা বিভাজ্য সংখ্যা: ১৪
  1. C++-এ অদ্বিতীয় ডিজিটযুক্ত সংখ্যা গণনা

  2. C++-এ নির্দিষ্ট রেঞ্জে সবচেয়ে ছোট ফ্যাক্টর K হয় এমন সংখ্যা গণনা

  3. C++-এ দেওয়া শর্ত পূরণ করে N-ডিজিট সংখ্যা গণনা

  4. C++-এ দেওয়া সংখ্যা থেকে কম একটি সংখ্যা প্রিন্ট করা যাতে তার সব অঙ্ক ভিন্ন হয়