Есть вопросы?

Здесь Вы можете найти ответы на многие вопросы или задать свой вопрос!

Выведите фамилии и имена учащихся в порядке убывания их среднего балла.

Входные данные

Заданы сначала количество учащихся n, затем n строк, каждая из которых содержит фамилию, имя и три числа (оценки по трем предметам: математике, физике, информатике). Данные в строке разделены одним пробелом. Оценки принимают значение от 1 до 5.

Выходные данные

Необходимо вывести пары фамилия-имя по одной на строке, разделяя фамилию и имя одним пробелом. Выводить оценки не нужно. Если несколько учащихся имеют одинаковые средние баллы, то их нужно выводить в порядке, заданном во входных данных.

Sample Input:

3
Markov Valeriy 5 5 5
Sergey Petrov 1 1 1
Petrov Petr 3 3 3
Sample Output:

Markov Valeriy
Petrov Petr
Sergey Petrov
вот мой код:
#include
#include
#include
#include
using namespace std;

struct man {
string name;
string surname;
double point;
};

bool s (man a, man b) {
return a. point >= b. point;
}

int main() {
int n;
cin >> n;
vector a(n);
for (int i = 0; i < n; i++) {
string temp_name, temp_surname;
int pointTemp1, pointTemp2, pointTemp3;
double temp_point;
cin >> temp_name >> temp_surname >> pointTemp1 >> pointTemp2 >> pointTemp3;
temp_point = pointTemp1 + pointTemp2 + pointTemp3;
man struct_temp;
struct_temp. name = temp_name;
struct_temp. surname = temp_surname;
struct_temp. point = temp_point;
a[i] = struct_temp;
}
stable_sort(a. begin(), a. end(), s);
for (auto now : a) {
cout << now. name << ' ' << now. surname << endl;
}
return 0;
}
Надо как-то добавить ,когда четыре отличника

Другие вопросы по: Информатика

Знаешь правильный ответ?
Выведите фамилии и имена учащихся в порядке убывания их среднего балла. Входные данные Заданы сначал...

Популярные вопросы