কম্পিউটার

C++ এ একটি প্রদত্ত পরিসরে A বা B এর মোট ভাজক গণনা করুন


আমাদের চারটি পূর্ণসংখ্যা L, R, A এবং B দেওয়া হয়েছে। লক্ষ্য হল পরিসরে [L,R] সংখ্যার গণনা খুঁজে বের করা যা সম্পূর্ণরূপে A বা B বা উভয়কেই ভাগ করে।

আমরা L থেকে R থেকে এবং প্রতিটি সংখ্যার জন্য যদি সংখ্যা%A==0 বা সংখ্যা%B==0 হয় তাহলে ভাজকের সংখ্যা বৃদ্ধি করে এটি করব।

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

ইনপুট − L=10, R=15, A=4, B=3

আউটপুট − A বা B − 2

এর ভাজকের সংখ্যা

ব্যাখ্যা

Number 12 is fully divisible by 3 and 4.
Number 15 is fully divisible by 3 only.
Total divisors=2

ইনপুট − L=20, R=30, A=17, B=19

আউটপুট − A বা B − 0

এর ভাজকের সংখ্যা

ব্যাখ্যা − 20 এবং 30 এর মধ্যে কোন সংখ্যা A বা B বা উভয় দ্বারা সম্পূর্ণভাবে বিভাজ্য নয়।

নিচের প্রোগ্রামে ব্যবহৃত পদ্ধতিটি নিম্নরূপ

  • আমরা চারটি চলক A, B, L এবং R.

    নিয়েছি
  • ফাংশন countDivisors(int l, int r, int a, int b) সবগুলিকে ইনপুট হিসাবে নেয় এবং A বা B বা উভয়েরই ভাজক ফেরত দেয় যা [L, R] রেঞ্জের মধ্যে থাকে৷

  • 0 হিসাবে প্রাথমিক গণনা নিন।

  • i=L থেকে i=R পর্যন্ত, যদি i%a==0 বা i%b==0 বৃদ্ধির সংখ্যা।

  • লুপের শেষে A বা B.

    এর ভাজক হিসাবে গণনা করুন
  • ফলাফল হিসাবে রিটার্ন গণনা।

উদাহরণ

#include <bits/stdc++.h>
using namespace std;
int countDivisors(int l, int r, int a,int b){
   int count = 0;
   for (int i = l; i <= r; i++){
      if(i%a==0 || i%b==0)
         { count++ ; }
   }
   return count;
}
int main(){
   int L=5;
   int R=15;
   int A=2;
   int B=5;
   cout <<endl<< "Total divisors of A and B : "<<countDivisors(L,R,A,B);
   return 0;
}

আউটপুট

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

উৎপন্ন করবে
Total divisors of A and B : 7

  1. C++ এর নিকটতম বিভাজক

  2. C++ এ একটি সংখ্যার সমস্ত নিখুঁত ভাজক গণনা করুন

  3. C++ এ একটি প্রদত্ত স্ট্রিং-এ সমস্ত প্যালিন্ড্রোমিক অনুসূচী গণনা করুন

  4. C++ এ প্রদত্ত XOR সহ সমস্ত জোড়া গণনা করুন