#include #include int main() { float a, b, c, d; float root1, root2; float cont = 1; do { printf("Solving quadratic equation: ax^2+bx+c=0\n"); printf("a = "); scanf("%f", &a); while (a == 0) { printf("a can't be equal to 0\n"); printf("a = "); scanf("%f", &a); } if ( a != 0 ) { printf("b = "); scanf("%f", &b); printf("c = "); scanf("%f", &c); } d = (b * b) - (4 * a * c); if ( d == 0 ) { root1 = -b / ( 2 * a ); printf("There is an equal root.\n"); printf("It is %f.\n\n", root1); } else if ( d > 0 ) { root1 = (-b + sqrt(d)) / (2 * a); root2 = (-b - sqrt(d)) / (2 * a); printf("There are two real roots.\n"); printf("They are %f and %f.\n\n", root1, root2); } else { printf("No real root\n\n"); } do{ printf("Continue (yes=1/no=0)?\n"); /* Ask Continue */ scanf("%f", &cont); printf("\n"); } while (cont != 0 && cont != 1); } while (cont == 1); return 0; }