I det här exemplet lär du dig att hitta rötterna till en kvadratisk ekvation i C-programmering.
För att förstå detta exempel bör du ha kunskap om följande C-programmeringsämnen:
- C Programmeringsoperatörer
- C if… else Uttalande
Standardformen för en kvadratisk ekvation är:
ax 2 + bx + c = 0, där a, b och c är reella tal och a! = 0
Termen är känd som diskriminerande av en kvadratisk ekvation. Det berättar om rötterna.b2-4ac
- Om diskriminanten är större än
0
är rötterna verkliga och annorlunda. - Om diskriminanten är lika med
0
är rötterna verkliga och lika. - Om diskriminanten är mindre än
0
är rötterna komplexa och olika.
![](https://cdn.wiki-base.com/3001955/c_program_to_find_the_roots_of_a_quadratic_equation.png.webp)
Program för att hitta rötter i en kvadratisk ekvation
#include #include int main() ( double a, b, c, discriminant, root1, root2, realPart, imagPart; printf("Enter coefficients a, b and c: "); scanf("%lf %lf %lf", &a, &b, &c); discriminant = b * b - 4 * a * c; // condition for real and different roots if (discriminant> 0) ( root1 = (-b + sqrt(discriminant)) / (2 * a); root2 = (-b - sqrt(discriminant)) / (2 * a); printf("root1 = %.2lf and root2 = %.2lf", root1, root2); ) // condition for real and equal roots else if (discriminant == 0) ( root1 = root2 = -b / (2 * a); printf("root1 = root2 = %.2lf;", root1); ) // if roots are not real else ( realPart = -b / (2 * a); imagPart = sqrt(-discriminant) / (2 * a); printf("root1 = %.2lf+%.2lfi and root2 = %.2f-%.2fi", realPart, imagPart, realPart, imagPart); ) return 0; )
Produktion
Ange koefficienter a, b och c: 2.3 4 5.6 root1 = -0.87 + 1.30i och root2 = -0.87-1.30i
I detta program används sqrt()
biblioteksfunktionen för att hitta kvadratroten av ett nummer. Mer information finns på: sqrt () -funktionen.