C ++ - program för att hitta alla rötter i en kvadratisk ekvation

Detta program accepterar koefficienter i en kvadratisk ekvation från användaren och visar rötterna (både verkliga och komplexa rötter beroende på diskriminerande).

För att förstå detta exempel bör du ha kunskap om följande C ++ programmeringsämnen:

  • C ++ if, if… else och Nested if … else

För en kvadratisk ekvation ax 2 + bx + c = 0 (där a, b och c är koefficienter) ges dess rötter genom att följa formeln.

Termen är känd som diskriminerande av en kvadratisk ekvation. Diskriminanten berättar om rötterna.b2-4ac

  • Om diskriminant är större än 0 är rötterna verkliga och olika.
  • Om diskriminant är lika med 0 är rötterna verkliga och lika.
  • Om diskriminerande är mindre än 0 är rötterna komplexa och olika.

Exempel: Roter av en kvadratisk ekvation

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

Produktion

Ange koefficienterna a, b och c: 4 5 1 Rötterna är verkliga och olika. x1 = -0,25 x2 = -1

I detta program används sqrt()biblioteksfunktionen för att hitta kvadratroten till ett nummer.

Intressanta artiklar...