alcoholist, простите, я не знаю из каких соображений вы игнорируете озвученные мной "смутные припоминания", но я скачал и поставил ABC-Паскаль, ввел в него ваш код, добавил одну строчку и все очевидно заработало:
Program omega2;
var W: string;
var R: string[4];
var i,n,m: integer;
begin
readln(W);
n:=length(W);
m:=n div 2; {êîíå÷íî, m=4}
for i:=1 to m do
begin
if W[2*i-1]+W[2*i]='a1' then R[i]:='x';
if W[2*i-1]+W[2*i]='b1' then R[i]:='y';
end;
R[0] := char (m);
writeln(R[1]);
writeln(R);
end.
Подозреваю, что это можно было сделать более красиво, с конкатенацией или еще чем, но это за пару секунд подтвердило написанное мною выше.
ЗЫ в годы студенчества половину текста моего диплома составлял листинг программы на Паскале, написанной мной со всеми нужными самописными библиотеками. Сейчас мой сын-восьмиклассник изучает Паскаль в школе и я его (Паскаль, конечно) сильно недолюбливаю. За жесткую типизацию и прочее. Но на форуме немало любителей этого языка, и если вы решили пополнить их ряды, то со структурой данных и шаблонными приемами придется разобраться, как минимум один раз.