### Specifically your program must do the following:

1. Use a function called quad_frm(a, b, c) to return real roots as a tuple such as `(1.0, -1.0)`
2. quad_frm(a, b, c) must return complex roots as a tuple of tuples such as `((0, 1.0),(0, -1.0))`
3. Use raw_input to get the coefficients a, b, and c.
4. Catch and handle bad user input and other error conditions using exception handling, report error messages as appropriate, and ask the user to re-enter the data.
5. Print the roots as` r1= x.xxx, r2 = x.xxx` if the roots are real
6. Print the roots as` r1 = x.xxx + i*y.yyy, r2 = x.xxx - i*y.yyy` if the roots are imaginary

### The the following doctest code will make sure your quad_frm() function is working properly..

`    """    >>> quad_frm(1,2,1)    (-1.0, -1.0)`

`    >>> quad_frm(1, 0, 1)    ((0.0, 1.0), (0.0, -1.0))`

`    >>> quad_frm(1, -1, -6)    (3.0, -2.0)        >>> quad_frm(1,-4,13)    ((2.0, 3.0), (2.0, -3.0)`

`    >>> quad_frm(2,-1,-1)    (1.0, -0.5)    """`

Your program must check for valid inputs for a, b, and c and catch runtime errors using exception handling.  If the user enters an improper value for a, b, or c, you must catch the error and exit the program. You may not use any of the built-in complex math functions, i.e., you must handle all the complex number manipulations yourself, using real values.

`if d<``0:     # check for imaginary roots`
`from math import *`
This allows you to use `sqrt(x)` .