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

সি++ প্রোগ্রাম: ন্যূনতম মান x যাতে q%x=0 এবং x%p=0


সমস্যা বিবরণ

দুটি ইন্টিজার p এবং q দেওয়া আছে। ন্যূনতম সম্ভাব্য সংখ্যা x খুঁজে বের করতে হবে যাতে q % x = 0 এবং x % p = 0। যদি শর্তপূরণ করে এমন কোনো সংখ্যা না থাকে, তবে -1 প্রিন্ট করুন।

উদাহরণ

যদি p = 3 এবং q = 66 হয়, তবে উত্তর ৩:
66 % 3 = 0
3 % 3 = 0

অ্যালগরিদম

  • যদি কোনো সংখ্যা x শর্ত পূরণ করে, তবে očিতভাবে q, p দিয়ে বিভাজ্য হবে (q % p = 0) কারণ x হল p-এর গুণিতক এবং q হল x-এর গুণিতক।
  • সুতরাং x-এর ন্যূনতম সম্ভাব্য মান হবে p এবং q-এর GCD। আর q যদি p দিয়ে বিভাজ্য না হয়, তবে শর্ত পূরণ করে এমন কোনো সংখ্যা থাকবে না।

সি++ কোড উদাহরণ

#include <bits/stdc++.h>
using namespace std;

int getMinValue(int p, int q) {
    if (q % p == 0)
        return __gcd(p, q);
    return -1;
}

int main() {
    int p = 3, q = 66;
    cout << "Minimum value = " << getMinValue(p, q) << endl;
    return 0;
}

আউটপুট

Minimum value = 3

  1. সি++-এ প্রাইম অঙ্ক দিয়ে বনানো দত্ত সংখ্যা চেয়ে ছোট সর্ববৃহৎ সংখ্যা

  2. C++-এ অ্যারেতে ফ্রিকোয়েন্সি শর্ত পূরণ করা জোড়া সংখ্যা গণনা

  3. যোগফল A ও B উভয়দ্বারা বিভাজ্য হলে সেকেন্ডারি অর্ডারড জোড়া (i,j) গণনা C++-এ

  4. C++-তে লিংকড লিস্ট থেকে K দিয়ে বিভাজ্য সর্বোচ্চ ও ন্যূনতম এলিমেন্ট বের করা