#include <iostream>
#include <stack>
#include <string>
using namespace std;
int main()
{
string name;
double gpa;
double high = 0;
stack<string>names;
for (int i=0; i<7; i++)
{
cout << " Enter student's name and gpa " << endl;
cin >> gpa ;
cin >> name ;
}
{
if (gpa > high)
{
high = gpa;
names.push(name);
}
else if (gpa=high)
{
high = gpa;
names.push(name);
}
}
cout << "Highest gpa is"<< high << "Names with highest gpa "<< ??? <<< endl;
system("pause");
return 0;
}
Есть этот список имен и с GPA для этих имен, 7, если быть точным.У меня есть алгоритм, чтобы получить самый высокий средний балл, и я знаю, что есть какое-то условие цикла while, которое нужно использовать, чтобы получить имена людей с самым высоким средним баллом.
Из вопроса 2 люди имеют одинаковый самый высокийГПД ... Как я буду отображать оба этих имени с наивысшим ГПД отдельно?Кажется, я не могу получить ту часть, где я мог бы связать имя с ГПД.
Справка была бы очень признательна.
Отредактировано: есть ли более простой способ использования цикла while где-то внутрицикл в моем коде?Где я использую оператор if (gpa < high)
, я что-то упускаю, чтобы получить имена с самым высоким GPA?