Ich habe ein Programm erstellt, mit dem der Benutzer 10 Noten eingeben kann. Ich habe eine while-Schleife verwendet, um Noten im Array zu speichern, aber wenn der Benutzer nur 5 Noten eingeben muss, kann er done eingeben, um das Programm zu beenden.Wie verwende ich eine while-Schleife mit einem Array?
Nachdem die Schleife beendet ist, wird sie berechnet und angezeigt. die höchste Note, die niedrigste Note und die durchschnittliche Note innerhalb des Arrays
Leider, wenn der Benutzer fertig ist, zeigt das Programm den Rest der Notenzeilen, die nicht eingegeben wurden.
Können Sie mir helfen, herauszufinden, wie Sie die while-Schleife stoppen können, um den Rest der nicht bewerteten Noten der Schleife anzuzeigen?
#include <iostream>
using namespace std;
int main()
{
const int SIZE = 10;
int grade[SIZE];
int count = 0;
int lowestGrade;
int highestGrade;
bool done = false;
cout << "This program is limited to entering up to 10 grades." << endl;
while (grade[count] != done && count < SIZE)
{
cout << "Enter a grade #" << count + 1 << " or done to quit: ";
cin >> grade[count];
count++;
}
//LOWEST GRADE
lowestGrade = grade[0];
for (count = 0; count < SIZE; count++)
if (grade[count] < lowestGrade)
{
lowestGrade = grade[count];
}
//HIGHEST GRADE
highestGrade = grade[0];
for (count = 0; count < SIZE; count++)
{
if (grade[count] > highestGrade)
{
highestGrade = grade[count];
}
}
//AVERAGE GRADE
double total = 0;
double average;
for (int count = 0; count < SIZE; count++)
total += grade[count];
average = (total/SIZE);
cout << endl;
cout << "Your highest grade is: " << highestGrade << endl;
cout << "Your lowest grade is: " << lowestGrade << endl;
cout << "Your average grade is: " << average << endl;
system("pause");
return 0;
}
Sehen Sie sich den Code 'cin >> grade [count];'. Wie werden Sie das Wort "fertig" in ein Array schreiben, das für Noten gedacht ist? Vielleicht könnte eine Zahl wie "-1" verwendet werden, um "fertig" zu bedeuten, und dann prüfen, ob die eingegebene Zahl "-1" ist? – PaulMcKenzie