a
, b
, c
কীভাবে ইনপুট নিতে হয়।if-else
কন্ডিশন ব্যবহার করে রুট নির্ধারণ।a
, b
, c
– এই তিনটি coefficient ইনপুট নেওয়া হবে।
D = b*b - 4*a*c;
D > 0
→ দুইটি বাস্তব ও ভিন্ন রুট।D == 0
→ দুইটি বাস্তব ও সমান রুট।D < 0
→ দুইটি কাল্পনিক (imaginary) রুট।#include <stdio.h>
#include <math.h>
int main() {
float a, b, c, discriminant, root1, root2;
printf("a, b, c এর মান দিন (ax^2 + bx + c): ");
scanf("%f %f %f", &a, &b, &c);
discriminant = b * b - 4 * a * c;
if(discriminant > 0) {
root1 = (-b + sqrt(discriminant)) / (2 * a);
root2 = (-b - sqrt(discriminant)) / (2 * a);
printf("দুইটি বাস্তব ও ভিন্ন রুট: %.2f এবং %.2f", root1, root2);
}
else if(discriminant == 0) {
root1 = root2 = -b / (2 * a);
printf("দুইটি বাস্তব ও সমান রুট: %.2f এবং %.2f", root1, root2);
}
else {
float realPart = -b / (2 * a);
float imagPart = sqrt(-discriminant) / (2 * a);
printf("দুইটি কাল্পনিক রুট: %.2f + %.2fi এবং %.2f - %.2fi",
realPart, imagPart, realPart, imagPart);
}
return 0;
}
ইনপুট:
a, b, c এর মান দিন (ax^2 + bx + c): 1 5 6
আউটপুট:
দুইটি বাস্তব ও ভিন্ন রুট: -2.00 এবং -3.00
ইনপুট:
a, b, c এর মান দিন (ax^2 + bx + c): 1 2 1
আউটপুট:
দুইটি বাস্তব ও সমান রুট: -1.00 এবং -1.00
উদাহরণ ৩:
ইনপুট:
a, b, c এর মান দিন (ax^2 + bx + c): 1 1 5
আউটপুট:
দুইটি কাল্পনিক রুট: -0.50 + 2.18i এবং -0.50 - 2.18i
scanf()
দিয়ে ইনপুট নেই।discriminant = b² - 4ac
→ রুটের ধরন নির্ধারণে সাহায্য করে।sqrt()
→ বর্গমূল বের করতে math.h
হেডার ফাইল লাগে।if-else
দিয়ে রুটের ধরণ চেক করি।