Задача 9 Урок 13.1

Задача 9 Урок 13.1:

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

var
  i,m:integer;
begin
  i:=1;
  m:=1;
  repeat
    repeat
      write('# ');
      m:=m+1;
    until(m=13);
    i:=i+1;
    writeln();
  until(i=9);
  readln();
end.

в нем сделана попытка вывести квадрат символов # размерами 13 на 9.
Но цикл оказывается бесконечным, разберитесь почему (напишите текстовое описание причины) и исправьте ошибку в коде, ответьте на вопросы:

На каком витке внешнего и внутреннего цикла (укажите номера витков) программа впервые начинает выводить не то, что ожидалось
Какой из двух циклов - внешний или внутренний оказывается бесконечным и почему (состояние переменных)

program task9;
var
i,m:integer;
begin
  i:=1;
  m:=1;
  repeat
    repeat
      write('# ');
      m:=m+1;
    until(m>13);  //изменил знак
    i:=i+1;
    m:=1;         //добавил приведение m к 1
    writeln();
  until(i>9);     //изменил знак сравнения
  readln();
end.

//1.На 14 витке внутреннего цикла
//2.Внутренний цикл бесконечен т.к. после первой остановки m уже никогда не будет равна 13