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

Урок 22

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

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.

Задача:

Определить, что делает эта программа
В ней есть лишние конструкции -- перепишите код оптимальным образом

{заполняет массив 1..8 цифрами из строки с произвольными символами и выводит их
через пробел}

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
   if (s[i]>='0') and (s[i]<='9') and (n <= 8) then
   begin
     a[n]:=s[i];
     write(a[n],' ');
     inc(n);
   end;
 readln();
end.

КОНСОЛЬ

Vvedite stroku
EG561ERFGBV65156dfg5b6dfbg156ebf56161bfd
5 6 1 6 5 1 5 6
vedro-compota's picture

засчитано

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