![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 31.05.2009
Сообщений: 24
|
![]()
На вход программе подаются сведения о сдаче экзаменов учениками 9-х классов некоторой средней школы. В первой строке сообщается количество учеников N, которое не меньше 10, но не превосходит 100, каждая из следующих N строк имеет следующий формат: <Фамилия> <Имя> <оценки>, где <Фамилия> — строка, состоящая не более чем из 20 символов, <Имя> — строка, состоящая не более чем из 15 символов, <оценки> — через пробел три целых числа, соответствующие оценкам по пятибалльной системе. <Фамилия> и <Имя>, а также <Имя> и <оценки> разделены одним пробелом. Пример входной строки:
Иванов Петр 4 5 4 Требуется написать программу, которая будет выводить на экран фамилии и имена трех лучших по среднему баллу учеников. Если среди остальных есть ученики, набравшие тот же средний балл, что и один из трех лучших, то следует вывести и их фамилии и имена. Требуемые имена и фамилии можно выводить в произвольном порядке. |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]()
а что там "мега" сложного?!
Описываете запись (Вам длину полей даже уже указали: Код:
Код:
Дальше сортируете массив по среднему баллу. Выводите всех с тремя лучшими (наибольшим значением) среднего балла. При выводе учитывать, что надо вывести с ТРЕМЯ РАЗНЫМИ значениями среднего балла (т.е., если балл одинаковый - фамилии учеников выводим, но счётчик трёх лучших увеличиваем только НА ОДИН! т.е. их всех с одинаковым баллом считаем за одного выведенного). |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Рекурсия - сложная задача! | RomT24 | Паскаль, Turbo Pascal, PascalABC.NET | 5 | 06.05.2009 23:14 |
Сложная задача | asale | Microsoft Office Excel | 6 | 07.04.2009 20:36 |