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

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

Пользователь по запросу программы вводит в цикле целые положительные числа, до тех пор пока не введет число большее 30. В ответ на каждое введенное пользователем число выводите все числа от 1 до этого введенного числа m.
При этом:
-за выводит чисел от 1 до $m должна отвечать процедура
-получение значения должно проходить в теле основной программы

var m:integer;
procedure podprog(q:integer);
var a:integer;
begin
  a:=1;
  repeat
     write(a,' ');
     a+=1;
  until a>m;
end;
begin
   while (m <= 30) do
     begin
       writeln();
       writeln('vvedite m');
       readln(m);
       if (m>=0) and (m<=30) then
         podprog (m);
     end;
   writeln('End');
   readln();
end.

Вывод консоли:

vvedite m
5
1 2 3 4 5
vvedite m
6
1 2 3 4 5 6
vvedite m
7
1 2 3 4 5 6 7
vvedite m
9
1 2 3 4 5 6 7 8 9
vvedite m
31
End