N, M, A, B চারটি ভেরিয়েবল দেওয়া আছে। লক্ষ্য হল ১≤i≤N এবং ১≤j≤M হলে যেসব অর্ডারড জোড়া (i,j)-র যোগফল (i+j) A এবং B উভয়দ্বারা বিভাজ্য, তাদের সংখ্যা বের করা।
দুটি নেস্টেড লুপে i এবং j-এর সব কোম্বিনেশন চেক করা হয়। (i+j)%A==0 এবং (i+j)%B==0 হলে কাউন্ট বাড়ানো হয়।
ইনপুট: N=5, M=10, A=2, B=3
আউটপুট: শর্ত পূরণকারী অর্ডারড জোড়া: ৯
ব্যাখ্যা: (1,5), (2,4), (2,10), (3,3), (3,9), (4,2), (4,8), (5,1), (5,7)
- N, M, A, B নেওয়া হয়।
sumDivisible(int n, int m, int a, int b)ফাংশন জোড়ার কাউন্ট রিটার্ন করে।- i=1 থেকে n, j=1 থেকে m পর্যন্ত লুপে (i+j)%a==0 && (i+j)%b==0 চেক করে count বাড়ানো হয়।
#includeusing namespace std; int sumDivisible(int n, int m, int a, int b){ int count = 0; for (int i = 1; i <= n; i++){ for(int j = 1; j <= m; j++){ if((i+j)%a == 0 && (i+j)%b == 0){ count++; } } } return count; } int main(){ int N = 50, M = 100, A = 5, B = 10; cout << "যোগফল A ও B দ্বারা বিভাজ্য অর্ডারড জোড়া: " << sumDivisible(N, M, A, B); return 0; }
উপরোক্ত কোড রান করলে আউটপুট:
যোগফল A ও B দ্বারা বিভাজ্য অর্ডারড জোড়া: ৫০০