Вопрос, который вызвал трудности
В файле записаны данные о результатах сдачи экзамена. Каждая строка содержит фамилию, имя и количество баллов, разделенные пробелами:
<Фамилия> <Имя> <Количество баллов>
Вывести в другой файл данные учеников, которые получили больше 80 баллов. Список должен быть отсортирован по убыванию балла. Формат выходных данных:
П. Иванов 98
И. Петров 96
...
Ответ экспертов Учись.Ru
Чтобы дать полноценный ответ, был привлечён специалист, который хорошо разбирается в теме.
После обсуждения с другими специалистами сервиса мы пришли к выводу, что правильный ответ на ваш вопрос будет звучать следующим образом:
// PascalABC.NET 3.2, сборка 1449 от 23.05.2017
// Внимание! Если программа не работает, обновите версию!
type
R=(string,integer);
begin
var a:=ReadAllLines('input.txt');
var L:=new List;
foreach var s in a do begin
var w:=s.ToWords.ToArray;
if w[2]>'80' then L+=(w[1][1]+'. '+w[0],w[2].ToInteger);
end;
var f:=OpenWrite('output.txt');
L.OrderByDescending(x->x[1]).ForEach(x->Writeln(f,x[0],' ',x[1]));
f.Close
end.
Скачать вложение Текст (TXT)
Скачать вложение Текст (TXT)
// Внимание! Если программа не работает, обновите версию!
type
R=(string,integer);
begin
var a:=ReadAllLines('input.txt');
var L:=new List;
foreach var s in a do begin
var w:=s.ToWords.ToArray;
if w[2]>'80' then L+=(w[1][1]+'. '+w[0],w[2].ToInteger);
end;
var f:=OpenWrite('output.txt');
L.OrderByDescending(x->x[1]).ForEach(x->Writeln(f,x[0],' ',x[1]));
f.Close
end.
Скачать вложение Текст (TXT)
Скачать вложение Текст (TXT)