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

Урок 18

Пользователь вводит в консоль строку вида:

Имя         123

-- т.е. слева имя и через произвольное количество пробелов число баллов.
Разберите эту строку получив имя пользователя как значение в переменной типа
string и число баллов в перееменной типа integer;

var fromString: string;

procedure lookForNameAndScore(fromString1: string);

  var loopCount{счетчик цикла}, toInt{для преобразования в число},
      newInt1, errorCode{код ошибки}: integer;
      toString1, toString2: string;

begin
  toString1 := '';
  toString2 := '';
  for loopCount := 1 to length(fromString1) do
  begin
    val(fromString1[loopCount], toInt, errorCode);
    if (errorCode = 0) then
    begin
      toString1 := toString1 + fromString1[loopCount];
      val(toString1, newInt1, errorCode);
    end
    else if (errorCode <> 0) and (fromString1[loopCount] = ' ') then
    begin
      toString1 := '';
    end
    else if (errorCode <> 0) and (fromString1[loopCount] <> ' ') then
    begin
      toString2 :=  toString2 + fromString1[loopCount];
    end;
  end;
  writeln('Имя: ', toString2, ', счёт: ', newInt1, ';');
end;

begin
  writeln('Введите строку');
  readln(fromString);
  lookForNameAndScore(fromString);
  readln();
end.

КОНСОЛЬ

Введите строку
Вася   456
Имя: Вася, счёт: 456;
vedro-compota's picture

засчитано

_____________
матфак вгу и остальная классика =)