Задача 6 Урок 18

Задача 6 Урок 18:

Пользователь вводит в консоль строки вида (имя + произвольное число пробелов + балл):

Вася         485
Коля       555
Юра        61
..........
....

end // признак завершения ввода
(пока не введёт строку end) -- где слева указаны имена участников, а справа -- число баллов.
Используя массив строк и массив целых чисел (пусть оба массива будут максимальной длины =3) считайте отдельно имена и баллы и определите победителя, выведя его имя и полученный им балл.

program u18z6;
type
  data = array[1..3] of integer;
  simb = array[1..3] of string;
var
  a,code,i,j,max,ball: integer;
  str,b,n,name: string;
  ba: data;
  na: simb;
begin
  for i:= 1 to 3 do
  begin
    writeln('Vvedite stroku',i);
    readln(str);
    n:='';
    b:='';
    if str='end' then
      break
    else
    begin
      for j:=1 to length(str) do
      begin
        val(str[j], a, code);
        if (str[j]<>' ') then
          if (code=0) then //цифры записываем в "b"
            b:=b+str[j]
          else
            n:=n+str[j];   //буквы записываем в "n"
        end;
      val(b, a);
      na[i]:=n;
      ba[i]:=a;
    end;
  end;
  max:=1;
  for i:= 1 to 3 do
  begin
    if ba[i]>ba[i-1] then
      max:=i;
  end;
  writeln(na[max],'   ',ba[max]);
  readln();
end.  </pre>
  max:=1;
  for i:= 1 to 3 do
  begin
    if ba[i]>ba[i-1] then
      max:=i;
  end;
  writeln(na[max],'   ',ba[max]);
  readln();
end.