Write down a C++ program which finds a better grade for a student based upon two test scores. For a numeric average x, following grade scale is utilized:
Grade Range:
a) 90.0 ≤ x ≤ 100.0
b) 80.0 ≤ x < 90.0
c) 70.0 ≤ x < 80.0
Fail x < 70.0
For every student, the program will require getting two test scores from the user; both scores must be positive floating point numbers and may involve 0.0. If user enters the negative number, show the suitable error message and re-prompt the user. When user enters the two valid positive numbers, pro-gram must determine the average and display to console the corresponding grade given within the first column of table above.