Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.06.2009, 19:17   #1
britva666
Пользователь
 
Регистрация: 31.05.2009
Сообщений: 24
По умолчанию Мега сложная задача в Паскале

На вход программе подаются сведения о сдаче экзаменов учениками 9-х классов некоторой средней школы. В первой строке сообщается количество учеников N, которое не меньше 10, но не превосходит 100, каждая из следующих N строк имеет следующий формат: <Фамилия> <Имя> <оценки>, где <Фамилия> — строка, состоящая не более чем из 20 символов, <Имя> — строка, состоящая не более чем из 15 символов, <оценки> — через пробел три целых числа, соответствующие оценкам по пятибалльной системе. <Фамилия> и <Имя>, а также <Имя> и <оценки> разделены одним пробелом. Пример входной строки:

Иванов Петр 4 5 4
Требуется написать программу, которая будет выводить на экран фамилии и имена трех лучших по среднему баллу учеников. Если среди остальных есть ученики, набравшие тот же средний балл, что и один из трех лучших, то следует вывести и их фамилии и имена. Требуемые имена и фамилии можно выводить в произвольном порядке.
britva666 вне форума Ответить с цитированием
Старый 24.06.2009, 21:29   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

а что там "мега" сложного?!
Описываете запись (Вам длину полей даже уже указали:
Код:
type
  schoolboy = record
    Fam:string[20];
    Imya:string[15];
    Ocenka:array[1..3] of integer;
  end;
Описываете массив.
Код:
var
  Pacany:array[1..100] of schoolboy;
Читаете текстовый файл, разбирая строчки по нужным полям.
Дальше сортируете массив по среднему баллу.
Выводите всех с тремя лучшими (наибольшим значением) среднего балла. При выводе учитывать, что надо вывести с ТРЕМЯ РАЗНЫМИ значениями среднего балла (т.е., если балл одинаковый - фамилии учеников выводим, но счётчик трёх лучших увеличиваем только НА ОДИН! т.е. их всех с одинаковым баллом считаем за одного выведенного).
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Рекурсия - сложная задача! RomT24 Паскаль, Turbo Pascal, PascalABC.NET 5 06.05.2009 23:14
Сложная задача asale Microsoft Office Excel 6 07.04.2009 20:36