একটি সংখ্যা N দেওয়া আছে। লক্ষ্য হল ধনাত্মক সংখ্যা a,b এর অর্ডারড জোড়া যাতে a² + b² = N, তাদের সংখ্যা বের করা।
a = 1 থেকে sqrt(N) পর্যন্ত লুপ চালিয়ে b² = N - a² হিসাব করা হয়। b = sqrt(b²) হলে সেটি বৈধ জোড়া।
ইনপুট: N=100
আউটপুট: জোড়ার সংখ্যা: ২
ব্যাখ্যা: (6,8) এবং (8,6) — ৬²+৮²=৩৬+৬৪=১০০
ইনপুট: N=11
আউটপুট: জোড়ার সংখ্যা: ০
- পূর্ণসংখ্যা N নেওয়া হয়।
squareSum(int n)ফাংশন জোড়ার কাউন্ট রিটার্ন করে।- a=1 থেকে sqrt(n) পর্যন্ত লুপে b² = n - a², b = sqrt(b²)।
- যদি b² == b*b হয়, count বাড়ানো হয়।
#include#include using namespace std; int squareSum(int n){ int count = 0; for (int a = 1; a <= sqrt(n); a++){ int bsquare = n - (a*a); int b = sqrt(bsquare); if(b*b == bsquare){ count++; } } return count; } int main(){ int N = 5; cout << "a^2+b^2=N হলে জোড়ার সংখ্যা: " << squareSum(N); return 0; }
উপরোক্ত কোড রান করলে আউটপুট (N=5 এর জন্য):
a^2+b^2=N হলে জোড়ার সংখ্যা: ১২২