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

C++-এ দুটি সংখ্যার কমন ডিভাইজর (Common Divisors of Two Numbers)


এখানে আমরা দেখব কীভাবে আমরা দুটি সংখ্যার কমন ডিভাইজরের সংখ্যা বের করতে পারি। আমরা সব কমন ডিভাইজর বের করব না, বরং আমরা গণনা করব কতগুলো কমন ডিভাইজর আছে। যদি দুটি সংখ্যা ১২ এবং ২৪ হয়, তবে কমন ডিভাইজরগুলো হলো 1, 2, 3, 4, 6, 12। তাই ৬টি কমন ডিভাইজর আছে, তাই উত্তর হবে ৬।

অ্যালগরিদম

countCommonDivisor(a, b)

begin
    count := 0
    gcd := gcd of a and b
    for i := 1 to square root of gcd, do
        if gcd is divisible by i, then
            if gcd / i = i, then
                count := count + 1
            else
                count := count + 2
            end if
        end if
    done
    return count
end

উদাহরণ

#include<iostream>
#include<cmath>
using namespace std;
int gcd(int a, int b) {
    if (a == 0)
        return b;
    return gcd(b%a, a);
}
int countCommonDivisors(int a, int b) {
    int gcd_val = gcd(a, b); // a এবং b-এর gcd বের করুন
    int count = 0;
    for (int i = 1; i <= sqrt(gcd_val); i++) {
        if (gcd_val % i == 0) { // যখন 'i' n-এর ফ্যাক্টর
            if (gcd_val / i == i) // যদি দুটি সংখ্যা একই হয়
                count += 1;
            else
                count += 2;
        }
    }
    return count;
}
main() {
    int a = 12, b = 24;
    cout << "Total common divisors: " << countCommonDivisors(a, b);
}

আউটপুট

The differences array: 6 5 10 1

  1. দুটি রেখার ছেদবিন্দু খুঁজে বের করার জন্য C++ প্রোগ্রাম

  2. দুটি সংখ্যার সাধারণ ভাজক বের করার জাভা প্রোগ্রাম

  3. পাইথন প্রোগ্রাম - দুটি সংখ্যার সাধারণ ভাজকের সংখ্যা গণনা করুন

  4. দুই সংখ্যার কমন ডিভাইজার বের করার পাইথন প্রোগ্রাম