(Math Review:) Will there be two roots for every choice of `a`

, `b`

, and `c`

?

No.

Let us consider roots that are real numbers, only. Then if:

- b
^{2}−4ac < 0 there are no real roots. - b
^{2}−4ac = 0 there is one real root. - b
^{2}−4ac > 0 there are two real roots.

Write a program that repeatedly asks the user for the coefficients `a`

, `b`

, and `c`

(which will be double precision)
and for each set writes out

- Both roots if there are two
- The single root if there is one
- A message if there are no roots.

Furthermore, write out an error message if `a = 0`

but continue processing.

If the user enters non-numeric data, the program will crash. (C can be more user-friendly than this, but the logic gets messy.)

What type of loop do you propose for this program?