#include<stdio.h>
#include<math.h>

/* Declare my function prototypes */

double quadraticRootOne(double a, double b, double c);
double quadraticRootTwo(double a, double b, double c);
double discriminant(double a, double b, double c);

int main(void)
{
  double a, b, c;
  double root1, root2;

  printf("Please enter a>");
  scanf("%lf",&a);
  printf("Please enter b>");
  scanf("%lf",&b);
  printf("Please enter c>");
  scanf("%lf",&c);

  root1 = quadraticRootOne(a,b,c);
  root2 = quadraticRootTwo(a,b,c);

  printf("%.2fx^2 + %.2fx + %.2f\n",a,b,c);
  printf("\tRoot 1 = %.2f\n",root1);
  printf("\tRoot 2 = %.2f\n",root2);

  return 0;
}

double discriminant(double a, double b, double c)
{
  double d;
  d = b*b - 4*a*c;
  return d;
}

double quadraticRootOne(double a, double b, double c)
{
  double d = discriminant(a,b,c);
  if(d < 0.0)
  {
    printf("Warning: discriminant is negative!\n");
    return ( (-b) + sqrt(d) ) / (2*a);
  }
  else
    return ( (-b) + sqrt(d) ) / (2*a) ;
}
double quadraticRootTwo(double a, double b, double c)
{
  double d = discriminant(a,b,c);
  if(d < 0.0)
  {
    printf("Warning: discriminant is negative!\n");
    return 0.0;
  }
  else
    return ( (-b) - sqrt(d) ) / (2*a) ;
  return 0.0;
}
