АА
Андрей Акимов

Исправте пожалуйста задачу на языке pascal !!

Пусть дана символьная квадратная матрица размерности n. Напечатайте элементы матрицы, лежащие на ее главной диагонали, если все они отличны от соответствующих элементов побочной диагонали. Если условие не выполняется, то напечатайте элементы побочной диагонали данной матрицы. В задаче использовать множества .
Исправте пожалуйста, я уже и не знаю что с ней делать ((

Program dflh ;
const n=5;
type matriks=array[1..n,1..n] of char;
var
a:matriks;
k,l,i,j:integer;
m:char;
procedure init(var a:matriks);
var i,j:integer;
begin
randomize;
for i:=1 to n do
for j:=1 to n do
a[i,j]:=chr (-33+random(33));
end;

procedure print(a:matriks);
var i,j:integer;
begin
for i:=1 to n do
begin
for j:=1 to n do
write(a[i,j]:3);
writeln;
end;
writeln;
end;

procedure glavn(a:matriks);
var i:integer;
begin
for i:=1 to n do
write(a[i,i]:3);
end;

procedure pob(a:matriks);
var i,j:integer;
begin
i:=0;
for j:=n downto 1 do begin
inc(i);
write(a[i,j]:3);
end;
end;

begin
init(a);
print(a);
if a[i,i]<>a[i,j] then
begin
write('Главная диагональ');
glavn(a);
writeln;
end
else
write('Побочная диагональ');
pob(a);
writeln;
end.

SS
Shurikvmb Shurikvmb

Сначала придётся таки прочесть, что такое множество в Паскале:
m1,m2: set of char; //матрица символьная
Затем заполняем множество m1 элементами главной диагонали, а m2 - побочной:
m1:=[ ];
for i:=1 to n do
m1:=m1+[ a[ i, i]];
И сравниваем
if m1=m2 then...

Похожие вопросы
Решите пожалуйста на языке Pascal 2 задачи!!!
Решите задачу на языке Pascal
помогите пожалуйста с задачей на pascal.
Помогите пожалуйста решить задача на Pascal
Помоги решить задачу на языке Pascal*****
Составьте программу на языке Pascal...задача внутри.
Задача по языку Pascal
Переведите, пожалуйста, из языка Pascal в язык Basic
Помогите решить задачу пожалуйста (Pascal)
Задача в Pascal