Код
program word_matrix;
uses crt;
var p,n,i,j:integer;
st,st1,st2,st3:string[5];
lt:char;
a:array [1..100,1..100] of string[5];
d,g:byte;
const
vow: set of char = ['a','e','i','o','u','y',' ','Ґ','Ё','®','г','л','н','о','п'];
begin
clrscr;
window(15, 3, 75, 25);
d:=wherex;
g:=wherey;
write('Enter n:');
readln(n);
for i:=1 to n do
for j:=1 to n do
begin
repeat
write('a[',i,',',j,']=');
readln(a[i,j]);
st:=a[i,j];
if length(st)<>5 then writeln ('Wrong input')
until length(st)=5;
end;
clrscr;
gotoxy (d+5,g);
writeln ('Your matrix:');
for i:=1 to n do
begin
for j:=1 to n do
write (A[i,j]:5, ' ');
writeln;
end;
for i:=1 to n do
for j:=1 to n do
begin
st1:=a[i,j];
st2:=a[i,j];
st2[1]:=st1[5];
st2[2]:=st1[4];
st2[4]:=st1[2];
st2[5]:=st1[1];
a[i,j]:=st2;
end;
for i:=1 to n do
begin
st3:=a[i,i];
for p:=1 to 5 do
if st3[p] in vow then st3[p]:='_';
a[i,i]:=st3;
end;
gotoxy (d+5,g+n+2);
writeln ('Final matrix:');
for i:=1 to n do
begin
for j:=1 to n do write (A[i,j]:5, ' ');
writeln;
end;
readln;
end.
PS Не обращайте внимания на некоторые лишние переменные и элмементы. Остались после моих экспериментов. Заранее благодарен.