Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.97/120: Рейтинг темы: голосов - 120, средняя оценка - 4.97
8 / 8 / 0
Регистрация: 15.02.2020
Сообщений: 195

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

24.07.2020, 17:27. Показов 23593. Ответов 1
Метки нет (Все метки)

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

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

Заданы сначала количество учащихся 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

C++
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
#include <iostream>
#include <cstring>
#include <vector>
#include <algorithm>
struct StudentData {
    std::string name;
    std::string surname;
    int math;
    int phys;
    int comp_science;
};
bool comp(const StudentData &a, const StudentData &b) {
    int tmp1 = a.math + a.phys + a.comp_science;
    int tmp2 = b.math + b.phys + b.comp_science;
    return tmp1 > tmp2 ? true : false;
} 
int main(void) {
    int n;
    std::cin >> n;
    std::vector< StudentData > data(n);
    for (int i = 0; i < n; i++) {
        std::cin >> data[i].name >> data[i].surname;
        std::cin >> data[i].math >> data[i].phys >> data[i].comp_science;
    }
    std::sort(data.begin(), data.end(), comp);
    for (int i = 0; i < n; i++) {
        std::cout << data[i].name << " " << data[i].surname << std::endl;
    }
    return 0;
}
Failed test #17 of 98. Wrong answer

Надо подправить код, написал не я, если кто может
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
24.07.2020, 17:27
Ответы с готовыми решениями:

Выведите фамилии и имена учащихся в порядке убывания их среднего балла
Выведите фамилии и имена учащихся в порядке убывания их среднего балла. Формат входных данных Создать текстовый файл &quot;...

Выведите фамилии и имена учащихся в порядке убывания их среднего балла
Помогите, пожалуйста, с решением, последний тест не проходит, пишет &quot;превышено максимальное время работы&quot;. Вместо пузырька вставляли...

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

1
2493 / 1157 / 709
Регистрация: 25.04.2016
Сообщений: 3,326
24.07.2020, 19:22
C++
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 <string>
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;
 
struct Student {
    string name, surname;
    int math, phys, comp_science;
};
 
bool cmp (Student a, Student b) {
    return a.math + a.phys + a.comp_science > b.math + b.phys + b.comp_science;
}
 
int main (void) {
    int n;
    cin >> n;
    if (n < 1) return 1;
 
    vector <Student> data(n);
    for (int i = 0; i < n; ++i) {
        cin >> data[i].name >> data[i].surname;
        cin >> data[i].math >> data[i].phys >> data[i].comp_science;
    }
    stable_sort(data.begin(), data.end(), cmp);
 
    for (auto s : data)
        cout << s.name << " " << s.surname << endl;
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
24.07.2020, 19:22
Помогаю со студенческими работами здесь

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

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

Напечатать на экран фамилии студентов в порядке убывания среднего балла
Дан фаил содержащий сведение о студентах группы.Каждая запись файла содержит:Фамилию и инициалы студента,возраст,средний балл за...

Структура: Выведите фамилии и имена учащихся, не имеющих троек (а также двоек и колов)...
Выведите фамилии и имена учащихся, не имеющих троек (а также двоек и колов). Входные данные Заданы сначала количество учащихся n,...

Вывести студентов в порядке убывания среднего балла
дан список студентов и список предметов,по которому сдавался экзамен. известны оценки по каждому предмету. разработать алгоритм и привести...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru