Hello. I am trying to write a program that solves the "quadratic equation" when given variables "A", "B" and "C" and find the number of zero's. One code is the definition, the next is the implementation and the last code it just the test file. I need help running the codes through a test file. To do this, I need to know which code must be written in the "Header File" and which code must be written in the ".CPP" file (I know the test file needs to be saved in a ".CPP file" already). After that, I also want to know if I used the "assert" code correctly. Thank You.

This part of the code is the definition:

``````#include <stdio.h>
#include <iostream>
#include <cmath>
using namespace std;

{
private:

//The coefficients are defined here
double aVar;
double bVar;
double cVar;

//Find Real Zeros
double vauleOne;
double vauleTwo;

//Define discriminat so that we can see if there are one, two are zero solutions
double findDis;

//Find imaginary numbers(might not need)
//bool findImaginary;

void input(); //Control input
void foundDis(); //Will find discriminat
//void negativeRoot(); //Sove quadratic using negative symbol
//void positiveRoot(); //Sove quadratic using positive symbol
//void foundReal(); //Find real zero's

//Sets variables "A", "B" and "C" to double.
void set_aVar(double);
void set_bVar(double);
void set_cVar(double);
public:
//Constructor that will allow this portion of code to run

//Allows the variables "A", "B" and "C" to pass through this part of code
QuadRoots(double aVar, double bVar, double cVar);
};``````

This is the implementation:

``````#include <stdio.h>

{
//Initialize
double aVar;
double bVar;
double cVar;

//Tells user they are using a "Quadratic Solver
cout<<endl;

/*************** Controls Variable "A" **************/
//Tell user to type in number for varaiable A
cout<<"\n Type in variable A: "<<endl;

//Will allow value to be typed for variable A
cin>>aVar;
set_aVar(aVar);
/*************** Controls Variable "A" **************/

/*************** Controls Variable "B" **************/

//Tell user to type in number for varaiable B
cout<<"\n Type in variable B: "<<endl;

//Will allow value to be typed for variable B
cin>>bVar;
set_bVar(bVar);
/*************** Controls Variable "B" **************/

/*************** Controls Variable "C" **************/
//Tell user to type in number for varaiable C
cout<<"\n Type in variable C: "<<endl;

//Will allow value to be typed for variable C
cin>>cVar;
set_cVar(cVar);
}
/*************** Controls Variable "C" **************/

/*********** With Regards to the Constructor *********/
{
input(); //Activates "input"
foundDis(); //Finds the discriminant();
}

{
set_aVar(aVar);
set_bVar(bVar);
set_cVar(cVar);

findDis();
}
/*********** With Regards to the Constructor *********/

/*********** Find Discriminate and solve *********/
{
findDis = (b * b) + (-4 * a * c);
assert(findDis >= 0); //Makes sure that discriminate is greater than zero so no imaginary numbers

if (findDis > 0) {
x1 = (-b + sqrt(findDis)) / (2*a);
x2 = (-b - sqrt(findDis)) / (2*a);
cout << "Roots are real. Number of Solutions is two" << endl;
cout << "x1 = " << x1 << endl;
cout << "x2 = " << x2 << endl;

}
else if (findDis == 0) {
cout << "Roots are real. Number of Solutions is one." << endl;
x1 = (-b + sqrt(findDis)) / (2*a);
cout << "x1 = x2 =" << x1 << endl;
}
else {
cout << "Roots are complex. Number of Solutions is zero"  << endl;
}
count<< "Number of real numbers: " << countReal++;
}
/*********** Find Discriminate and solve *********/

#endif``````

This is the test code:

``````#include <stdio.h>
#include <cmath>
#include <assert.h>
#include <cmath>

/* Use as test:
*  a= 4, b=-3, c=-2
*  solution:
*      x1 = 1.17539
*      x2 = -0.425391
* */
int main(){