Извини, спутал.
Интересно, что ведь сначала написал все, чтоб искать именно участника (в качестве доказательства - наличие слов "либо равно"), а потом вдруг решил, что это не надо (стукнуло в голову!) и убрал лишние строки..
Вот исправленный вариант.
Заводишь переменную типа base, скажем Winner
Заводишь real переменную, скажем MaxRez.
Кладешь туда 0 (ноль)
Читаешь файл, проходишься по всем записям, читаешь число rez.
Сравниваешь его с MaxRez.
Если оно меньше, чем MaxRez - ничего не делаешь, переходишь к следующей записи
Если оно больше либо равно MaxRez - присваиваешь его значения переменной MaxRez, а значение всего рекорда присваиваешь переменной Winner.
В конце цикла максимальный результат лежит в MaxRec, а победитель - в Winner.
Но тут есть одно но: результаты нескольких участников могут быть равны, тогда победитель не один (именно поэтому я проверяю равенство с большестью, а не с меньшестью, что было бы рациональнее, если ищется только максимальный результат). Выход отсюда не совсем тривиален. Нужно либо завести еще один массив типа base, но непонятки возникают с его размерностью. Можно положить ее такой же, как у исходного массива, но если волнует проблема минимизации памяти, то лучше сделать список.
Правда, в задании не сказано, что делать с найденными победителями. Если просто печатать их данные, то можно избежать многих проблем
.
И еще раз извиняюсь за отъезд крыши в неподходящий момент..