আমাদের দুটি উপাদান দেওয়া হয়েছে ধরা যাক, d এবং num, কাজটি হল d সংখ্যার সংখ্যাগুলি খুঁজে বের করা যা num দ্বারা বিভাজ্য৷
সহজ কথায় ধরা যাক আমরা d-এ একটি ইনপুট 2 দিয়েছি, তাই আমরা প্রথমে 10-99 পর্যন্ত সমস্ত 2-অঙ্কের সংখ্যা খুঁজে পাব এবং তারপরে সংখ্যা দ্বারা বিভাজ্য সমস্ত সংখ্যা খুঁজে বের করব।
আসুন উদাহরণের সাহায্যে এর আরও কিছু বুঝতে পারি −
ইনপুট − সংখ্যা =2, সংখ্যা =12
আউটপুট৷ − প্রদত্ত সংখ্যা দ্বারা বিভাজ্য n সংখ্যার সংখ্যা:8
ব্যাখ্যা − 12 দ্বারা বিভাজ্য 2-অঙ্কের সংখ্যাগুলি হল 12, 24, 36, 48, 60, 72, 84 এবং 96, তাই 8 2 সংখ্যার সংখ্যা 12 দ্বারা বিভাজ্য৷
ইনপুট − সংখ্যা =2, সংখ্যা =9
আউটপুট − প্রদত্ত সংখ্যা দ্বারা বিভাজ্য n সংখ্যার সংখ্যা − 10
ব্যাখ্যা − 9 দ্বারা বিভাজ্য 2 সংখ্যার সংখ্যা হল 18, 27, 36, 45, 54, 63, 72, 81, 90 এবং 99 তাই 9 দ্বারা বিভাজ্য 10টি দুটি সংখ্যার সংখ্যা রয়েছে৷
নিম্নলিখিত প্রোগ্রামে ব্যবহৃত পদ্ধতি
-
ইনপুট হিসাবে উপাদান সংখ্যা এবং সংখ্যা নিন।
-
সংখ্যা দ্বারা বিভাজ্য সংখ্যার সংখ্যা গণনা করতে 0 হিসাবে একটি পরিবর্তনশীল গণনা বরাদ্দ করুন৷
-
ডিজি_ফার্স্টকে pow (10, অঙ্ক - 1) হিসাবে ঘোষণা করুন এবং সেট করুন
-
ডিক্লেয়ার করুন এবং ডিজি_লাস্টকে pow(10, ডিজিট)
এ সেট করুন -
এখন ঘোষণা করুন এবং d_first কে digi_first % num এবং d_last কে digi_last % num হিসাবে সেট করুন
-
d_first এবং d_last খুঁজে পাওয়ার পর, digi_first কে (digi_first - d_first) + num এবং digi_last হিসাবে digi_last - d_last
-
এখন গণনা সেট করুন ((ডিজি_লাস্ট - ডিজি_ফার্স্ট) / সংখ্যা + 1)।
-
রিটার্ন এবং প্রিন্ট কাউন্ট।
উদাহরণ
#include <cmath>
#include <iostream>
using namespace std;
int main(){
int digit = 2 , num = 9;
//store the count
int count= 0 ;
int digi_first = pow(10, digit - 1);
int digi_last = pow(10, digit);
int d_first = digi_first % num;
int d_last = digi_last % num;
digi_first = (digi_first - d_first) + num;
digi_last = digi_last - d_last;
count = ((digi_last - digi_first) / num + 1);
cout<<"Count of n digit numbers divisible by given number: "<<count<<"\n";
return 0;
} আউটপুট
যদি আমরা উপরের কোডটি চালাই, তাহলে আমরা নিম্নলিখিত আউটপুট পাব −
Count of n digit numbers divisible by given number: 10