Собственно в Паскале почти все эти операторы есть, кроме ++. Алгоритм:
- Заполняешь массив нулями
- Задаешь переменную направление, я сделал 0 вправо, 1 вниз, 2 влево, 3 вверх
- В соответствии с направлением увеличиваешь или уменьшаешь текущий индекс
- Если в индексе не ноль или вылез за границу меняешь направление на следующее
- Иначе записываешь значение и продвигаешь его на единицу.