Дана целая квадратная матрица n-го порядка. Найти, является ли она волшебным

Дана целая квадратная матрица n-го порядка. Найти, является ли она волшебным квадратом, т. е. таковой матрицей, в которой суммы частей во всех строчках и столбцах одинаковы

Задать свой вопрос
1 ответ
const
nbsp;nbsp;MAX=5;
nbsp;var a:array[1..MAX,1..MAX] of integer;
nbsp;nbsp;nbsp;nbsp;nbsp;n:integer;
nbsp;nbsp;nbsp;nbsp;nbsp;ok:boolean;
nbsp;nbsp;nbsp;nbsp;nbsp;i,j:integer;
nbsp;nbsp;nbsp;nbsp;nbsp;sum:integer;
nbsp;nbsp;nbsp;nbsp;nbsp;temp:integer;
nbsp;begin
nbsp;nbsp;Write(Введите рамер матрицы (3..4));
nbsp;nbsp;Readln(n);
nbsp;nbsp;Writeln(Введите строчки матрицы!);
nbsp;nbsp;Writeln(После ввода ,n, целых чисел нажимайте Enter!);
nbsp;nbsp;nbsp;for i:=1 to n do
nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;Write(-gt;);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;for j:=1 to n-1 do
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;read(a[i,j]);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;readln(a[i,n]);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;end;
nbsp;
nbsp;nbsp;nbsp;nbsp;Ok:=True;
nbsp;nbsp;nbsp;nbsp;sum:=0;
nbsp;nbsp;nbsp;nbsp;nbsp;for i:=1 to n do
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;sum:=sum+a[i,i];
nbsp;nbsp;nbsp;nbsp;Вычисляем сумму по строкам
nbsp;nbsp;nbsp;i:=1;
nbsp;nbsp;nbsp;nbsp;repeat
nbsp;nbsp;nbsp;nbsp;nbsp;temp:=0;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;for j:=1 to n do
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;temp:=temp+a[i,j];
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;i:=i+1;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;if temp lt;gt; sum then
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;ok:=False;
nbsp;nbsp;nbsp;nbsp;until (not ok) or (igt;n);
nbsp;
nbsp;nbsp;nbsp;if ok then
nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;j:=1;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;repeat
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;temp:=0;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;for i:=1 to n do
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;temp:=temp+a[i,j];
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;j:=j+1;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;if temp lt;gt; sum then
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;ok:=False;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;until (not ok) or (jgt;n);
nbsp;nbsp;nbsp;nbsp;nbsp;if ok then
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;temp:=0;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;j:=n;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;for i:=1 to n do
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;begin
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;temp:=temp+a[i,j];
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;j:=j-1;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;end;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;if templt;gt; sum then
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;ok:=False;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;end;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;end;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;Write(Введенная матрица);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;if not ok then
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;write(не);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;Writeln(является волшебным квадратом!);
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;readln;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;end
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт