I have already started the program, the only issue is that I cannot get it to work. How can I improve my code?
Prompt:
Using the C++ while loop or the do – while loop (your choice) write a program that does the following:
Calculate the average of a series of homework grades (0 - 100) entered one at a time. In this case the lowest score will be dropped and the average computed with the remaining grades.
For example suppose you enter the following grades: 78, 85, 81, 90, 88, 93 and 97.
The average will be computed from the 6 grades 85, 81, 90, 88, 93 and 97. The low score of 78 will be dropped.
Output each grade (you can write it back out to the screen as each grade is entered), the dropped grade and the final average.
Run your program and show the output for the following two test cases:
CASE 1: Input grades 78, 85, 81, 90, 88, 93 and 97.
CASE 2: Input grades 75, 80, 83, 86, 90, 93, 87 and 77.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
#include <iostream>
#include <fstream>
#include <iomanip>
#include <string>
using namespace std;
int main(void)
{
double average, grade, low;
int i = 0;
while(i<8)
{
cout << "CASE 1: input grades" << endl;
cin >> grade;
if (grade > 0 && grade<100)
{
average += grade;
if (grade < low)
low = grade;
i++;
}
}
average -= low;
average = average / 7;
cout <<"Average:" << average << endl;
cout << "Lowest score dropped" << endl;
return 0;
}
|