C ++ - program for å finne alle røttene til en kvadratisk ligning

Dette programmet aksepterer koeffisienter for en kvadratisk ligning fra brukeren og viser røttene (både ekte og komplekse røtter avhengig av diskriminerende).

For å forstå dette eksemplet, bør du ha kunnskap om følgende C ++ programmeringsemner:

  • C ++ hvis, hvis … annet og Nestet hvis … annet

For en kvadratisk ligning akse 2 + bx + c = 0 (der a, b og c er koeffisienter), er røttene gitt ved å følge formelen.

Begrepet er kjent som diskriminant av en kvadratisk ligning. Diskriminerende forteller røttenes natur.b2-4ac

  • Hvis diskriminant er større enn 0, er røttene ekte og forskjellige.
  • Hvis diskriminant er lik 0, er røttene ekte og like.
  • Hvis diskriminerende er mindre enn 0, er røttene komplekse og forskjellige.

Eksempel: Røtter av en kvadratisk ligning

 #include #include using namespace std; int main() ( float a, b, c, x1, x2, discriminant, realPart, imaginaryPart; cout <> a>> b>> c; discriminant = b*b - 4*a*c; if (discriminant> 0) ( x1 = (-b + sqrt(discriminant)) / (2*a); x2 = (-b - sqrt(discriminant)) / (2*a); cout << "Roots are real and different." << endl; cout << "x1 = " << x1 << endl; cout << "x2 = " << x2 << endl; ) else if (discriminant == 0) ( cout << "Roots are real and same." << endl; x1 = -b/(2*a); cout << "x1 = x2 =" << x1 << endl; ) else ( realPart = -b/(2*a); imaginaryPart =sqrt(-discriminant)/(2*a); cout << "Roots are complex and different." << endl; cout << "x1 = " << realPart << "+" << imaginaryPart << "i" << endl; cout << "x2 = " << realPart << "-" << imaginaryPart << "i" << endl; ) return 0; )

Produksjon

Angi koeffisientene a, b og c: 4 5 1 Røttene er reelle og forskjellige. x1 = -0,25 x2 = -1

I dette programmet brukes sqrt()biblioteksfunksjon for å finne kvadratroten til et tall.

Interessante artikler...