i wrote this program..sweat all over it...but its not working..can any one help me figure my mistake?

Code:#include <string> #include <iostream> #include <cmath> using namespace std; int QuadRoots ( double a, double b, double c, double &r1, double &r2); int main() { int result = 0; double a, b, c; double r1,r2; cout << "Quadratic coefficients: "; cin >> a >> b >> c; result = QuadRoots(a, b, c, r1, r2); if (result == 0) { cout << "Roots: " << "r1= " << " " << "r2= " << endl; } else if(result == 1) { cout << "One of the root is negative"; } else if(result == 2) { cout << "One of the root is 0"; } return 0; } int QuadRoots ( double a, double b, double c, double &r1, double &r2) { int result = 0; if(a == 0) { result = 2; } if((b*b - 4*a*c) < 0) { result = 1; } if ((a != 0) && ((b*b - 4*a*c) > 0)) { double radical = sqrt(b*b - 4*a*c); &r1 = (-b + radical) / (2*a); &r2 = (-b - radical) / (2*a); result = 0; } return result; }