先程、作成した問題をFree Pascal 3.2.2 で解いてみました。
はまった点を思い出として書き残しておきます。
PascalはBasicと同じで イコール判定は = です。
:=よく:を忘れました。
StringReplaceを使いたかったのですが、使い方がよくわからず自前で作成してみました。
同じでないはPascalだと <> を使います。
本来は縦横の判定もあるのですが、無駄に長くなるので斜めだけ判定しています。
9行目Length(s)-1だと、なぜか一文字かけるのでこうしています。
配列のソート、作るしかなさそうだったのでランダムソートで作ってみました。
一番はまったのはIntToStr 型が違うのかと思ってIntegerからLongintにしています。
3行目のライブラリが必要だったようです。
Integerでも動きました。
18、19行 配列数直打ちしていますが、Length(n)のほうがいいです。
3時間かかりました。(息抜きスプラ2を1時間込み)
動作確認