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

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

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

	
Имя         123

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

Решение:

program u18z05;
var s,s0,name:string;
  i,j,n,Code:integer;

procedure f1(s:string; var n:integer; var name:string);
begin
  j:=1;
  for i:=1 to length(s) do
  begin
    if(s[i]>='0')and(s[i]<='9') then
      s0:=s0+s[i]
    else
    begin
      if s[i]<>' ' then
        name:=name+s[i];
      if s0<>'' then
      begin
        s0:='';
        j:=j+1;
      end;
    end;
    Val(s0,n,Code);
  end;
end;

begin
  writeln('Vvedite stroku');
  readln(s);
  f1(s,n,name);
  writeln(n);
  writeln(name);
  readln();
end. 

Консоль:

Vvedite stroku
Dima    128746
128746
Dima