Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ симметрия матрицы

Автор: SayMYname 12.12.2008 19:43

В чем ошибка?????Подскажите...и если что исправьте) плиз))
условие: Дана квадратная матрица А порядка n. Проверить, является ли данная матрица симметричной.


Код
program;
uses
crt;
VAr
a: array [1..100,1..100] of real;
    i,j,n:integer;
procedure enter;
begin
writeln ('введите  n');
readln (n);
writeln ('введите ваш массив');
for i:=1 to n do
for j:=1 to n do
readln (a[i,j]);
end;
procedure exit;
begin
for i:=1 to n do
for j:=1 to n do
writeln (a[i,j]);
end;
procedure proverka;
begin
for i:=1 to n do
for j:=1 to n do
if a[i,j]<>a[j,i] then
begin
clrscr;
exit;
writeln ('матрица не симметрична ');
readkey;
halt;
end;
end;
BEGIN
clrscr;
enter;
proverka;
clrscr;
exit;
writeln ('матрица симметрична');
readkey;
END.

Автор: volvo 12.12.2008 19:50

Цитата
Проверить, является ли данная матрица симметричной.
Симметричной относительно чего?

Автор: SayMYname 12.12.2008 21:17

это все условие!!!
диагонали наверное))))

Автор: Ozzя 12.12.2008 21:46

exit;
writeln ('матрица не симметрична ');
???

Автор: SayMYname 12.12.2008 22:37

ты в том плане что функция EXIT является стандартной??? надо заменить??

Автор: volvo 12.12.2008 23:11

Оззя в том плане, что после выхода - как то не очень хорошо печатать результат... Обычно это делается перед выходом из программы... А давать имена процедурам, совпадающие с общепринятыми идентификаторами - лучше не надо...

Автор: SayMYname 12.12.2008 23:14

ну ясн....

Добавлено через 4 мин.
а так все нормально в программе???

Автор: volvo 12.12.2008 23:21

P.S. Кстати, твоя программа прекрасно определяет симметричность относительно главной диагонали:
N = 4 и матрица


1 1 2 1
1 1 1 1
2 1 1 1
1 1 1 1
выдают "матрица симметрична"...