C++ – Quadratic Equation Solver

Functions:
checkRoots()
calculateRoots()
#include <iostream> #include <iomanip> #include <math.h> using namespace std; int checkRoots(double A, double B, double C) { int D = pow(B, 2) - 4 * A * C; if (D > 0) { return 0; } else { return D; } } void calculateRoots(double A, double B, double C) { double x1, x2; x1 = (- B + sqrt(pow(B, 2) - 4 * A * C)) / (2 * A); x2 = (- B - sqrt(pow(B, 2) - 4 * A * C)) / (2 * A); if (x1 != x2) { cout << "1. X = " << setprecision(5) << x1 << endl; cout << "2. X = " << setprecision(5) << x2 << endl; } else { cout << "X = " << setprecision(5) << x1 << endl; } } int main() { double A, B, C; cout << "Quadratic Equation Solver" << endl << endl; cout << "A = "; cin >> A; cout << "B = "; cin >> B; cout << "C = "; cin >> C; int result = checkRoots(A, B, C); cout << endl; if (result == 0) { calculateRoots(A, B, C); } else { cout << "Complex Roots" << endl; cout << "[Discriminant = " << result << "]" << endl; } return 0; }
