এই টিউটোরিয়ালে, আমরা একটি প্রোগ্রাম লিখব যেখানে x + y = n এবং x * y = n হয় এমন দুটি সংখ্যা বের করব। কখনো কখনো এই ধরণের সংখ্যা বের করা সম্ভব নয়। সেক্ষেত্রে আমরা None প্রিন্ট করব। শুরু করা যাক।
দেওয়া সংখ্যাগুলো একটি কোয়াড্রাটিক ইকুয়েশনের সম এবং গুণফল। তাই সংখ্যাটি অস্তিত্বে থাকবে না যদি n² - 4*n < 0। অন্যথায় সংখ্যাগুলো হবে $$\lgroup n + \sqrt{n^{2} - 4*n}\rgroup/2$$ এবং $$\lgroup n - \sqrt{n^{2} - 4*n}\rgroup/2$$।
উদাহরণ
কোডটি দেখি।
#include <bits/stdc++.h>
using namespace std;
void findTwoNumbersWithSameSumAndProduc(double n) {
double imaginaryValue = n * n - 4.0 * n;
// checking for imaginary roots
if (imaginaryValue < 0) {
cout << "None";
return;
}
// printing the x and y
cout << (n + sqrt(imaginaryValue)) / 2.0 << endl;
cout << (n - sqrt(imaginaryValue)) / 2.0 << endl;
}
int main() {
double n = 50;
findTwoNumbersWithSameSumAndProduc(n);
return 0;
}
আউটপুট
48.9792 1.02084
উপসংহার
টিউটোরিয়ালে যদি কোনো প্রশ্ন থাকে, তবে কমেন্ট সেকশনে জানান।