#include "library.h" void solve_quadratic(double A, double B, double C) // solve Ax2 + Bx + C = 0 and print all solutions; { const double det = B*B - 4*A*C; if (det < 0) print("No solutions\n"); else if (det == 0) { print("X = "); print(-B/(2*A)); new_line(); } else { const double sqrt_det = sqrt(det); print("X = "); print((-B+sqrt_det)/(2*A)); new_line(); print(" or "); print((-B-sqrt_det)/(2*A)); new_line(); } } void interact() { print("Enter A and B and C: "); const double A = read_double(); const double B = read_double(); const double C = read_double(); solve_quadratic(A, B, C); } bool ask_again() { print("Solve another equation? "); const string answer = read_string(); if (answer == "yes") return true; if (answer == "no") return false; return ask_again(); } void do_tests() { if (ask_again()) { interact(); do_tests(); } } void main() { interact(); do_tests(); }