Магический, или волшебный, квадрат — это квадратная таблица NxN, заполненная N 2 числами таким образом, что сумма чисел в каждой строке, каждом столбце и на обеих диагоналях одинакова. Задан двумерный массив размерностью NxN. О...

Магический, или волшебный, квадрат — это квадратная таблица NxN, заполненная N 2 числами таким образом, что сумма чисел в каждой строке, каждом столбце и на обеих диагоналях одинакова. Задан двумерный массив размерностью NxN. Определить, является ли он магическим квадратом. Составить блок схему, описание решения и программу на Паскаль
Гость
Ответ(ы) на вопрос:
Гость
var   i,j,n:integer;   m: array[1..10,1..10] of integer;   flag:boolean;   sum: array[0..1] of longint;  begin   readln(n);   flag:=true;   for i:=1 to n do    begin     for j:=1 to n do      read(m[i,j]);     readln;    end;      //Проверяем строки   i:=1;   for j:=1 to n do       sum[i mod 2]:=sum[i mod 2]+m[i,j];   while ((isum[1] then flag:=false;      sum[(i+1) mod 2]:=0;     end;     //Проверяем столбцы   sum[0]:=0;   sum[1]:=0;   j:=1;   for i:=1 to n do       sum[j mod 2]:=sum[j mod 2]+m[i,j];   while ((jsum[1] then flag:=false;      sum[(j+1) mod 2]:=0;     end;   sum[0]:=0;   sum[1]:=0;   j:=1;   for i:=1 to n do    begin     sum[0]:=sum[0]+m[i,j];     sum[1]:=sum[1]+m[n-i+1,j];     j:=j+1;    end;   if  sum[0]<>sum[1] then flag:=false;   if flag then writeln('Магический');  end.
Не нашли ответ?
Ответить на вопрос
Похожие вопросы