Program C ++ na vyhľadanie všetkých koreňov kvadratickej rovnice

Tento program prijíma od používateľa koeficienty kvadratickej rovnice a zobrazuje korene (skutočné aj komplexné korene v závislosti od diskriminátora).

Aby ste pochopili tento príklad, mali by ste mať znalosti nasledujúcich programovacích tém C ++:

  • C ++ ak, ak … inak a Vnorené, ak … inak

Pre kvadratickú rovnicu ax 2 + bx + c = 0 (kde a, b a c sú koeficienty) sú jej korene dané vzorcom.

Tento pojem je známy ako diskriminátor kvadratickej rovnice. Diskriminačný povie povahu koreňov.b2-4ac

  • Ak je diskriminácia väčšia ako 0, korene sú skutočné a odlišné.
  • Ak je diskriminátor rovný 0, korene sú skutočné a rovnaké.
  • Ak je diskriminácia menšia ako 0, korene sú zložité a odlišné.

Príklad: Korene kvadratickej rovnice

 #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; )

Výkon

Zadajte koeficienty a, bac: 4 5 1 Korene sú skutočné a odlišné. x1 = -0,25 x2 = -1

V tomto programe sa sqrt()funkcia knižnice používa na nájdenie druhej odmocniny čísla.

Zaujímavé články...