Задача 2 Урок 21

Задача 2 Урок 21

Есть исходный код:

var s:string;  i, n: Integer;
  a:  array[1..8] of char;
begin
 writeln('Vvedite stroku');
 readln(s);
 n := 1;
 while(n<10) do      // 1-8
   begin
   for i:=1 to Length(s) do
       if (s[i]>='0')and(s[i]<='9') then
         begin
           a[n]:=s[i]; 
           inc(n); 
         end;
   end;
 for i:=low(a) to high(a) do
   write(a[i],' '); // выводим массив
 readln();
end.
Задача:
Определить, что делает эта программа
В ней есть лишние конструкции -- перепишите код оптимальным образом
program lesson21_2;
// Записывает в a[] первые 8 цифр из строки s.
var s:string;   i, n: Integer;
  a:  array[1..8] of char;
begin
  writeln('Vvedite stroku');
  readln(s);
  n:=1;
  for i:=1 to Length(s) do
  begin
    if (s[i]>='0') and (s[i]<='9') then
    begin
      a[n]:=s[i];
      inc(n);
    end;
    if n>high(a) then
      break;
  end;
  for i:=low(a) to high(a) do
    write(a[i],' '); // выводим массив
  readln();
end.