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.