Страница 1 из 1
Магический/латинский квадрат
Добавлено: 18 дек 2009, 22:36
Жасмин
Латинским квадратом порядка n называется квадратная таблица размером n*n каждая строка и столбец который содержит все числа от 1 до n. Проверить является ли заданная целочисленая матрица латинским квадратом на Pascal.Спасибо
Re: Помогите,пожалуйста!!!Очень,очень надо.
Добавлено: 18 дек 2009, 23:50
Newbie
Жасмин писал(а):Латинским квадратом порядка n называется квадратная таблица размером n*n каждая строка и столбец который содержит все числа от 1 до n. Проверить является ли заданная целочисленая матрица латинским квадратом на Pascal.Спасибо
Делается за 5 мин...
Возможно код кривой, пишу как умею + ночь))))
Код: Выделить всё
program latmatrix;
uses
crt;
const
n = 5;
var
a : array[1..n,1..n] of integer;
b : array[1..n] of boolean;
i,j : integer;
res : boolean;
procedure resetb(var ar : array of boolean);
var
i : integer;
begin
for i :=0 to high(ar) do
ar[i] := false;
end;
begin
clrscr;
res := true;
resetb(b);
for i := 1 to n do
begin
for j := 1 to n do
read(a[i,j]);
writeln;
end;
for i:= 1 to n do
begin
for j := 1 to n do
if(not b[a[i,j]])then
b[a[i,j]] := true
else
begin
res := false;
break;
end;
if(not res)then
break;
resetb(b);
end;
if(res)then
begin
for i:= 1 to n do
begin
for j := 1 to n do
if(not b[a[j,i]])then
b[a[j,i]] := true
else
begin
res := false;
break;
end;
if(not res)then
break;
resetb(b);
end;
end;
writeln(res);
readkey;
end.
Re: Помогите,пожалуйста!!!Очень,очень надо.
Добавлено: 19 дек 2009, 05:45
Жасмин
Спасибо болшое!!!