Магический, или волшебный, квадрат — это квадратная таблица nxn, заполненная n 2 числами таким образом, что сумма чисел в каждой строке, каждом столбце и на обеих диагоналях одинакова. задан двумерный массив размерностью nxn. определить, является ли он магическим квадратом. составить блок схему, описание решения и программу на паскаль
140
413
Ответы на вопрос:
Программа для решения поставленной - в прилагаемом файле. отмечу, что программа далеко не оптимальная. например, совсем не обязательно искать все суммы. если хотя бы одна не совпала с предыдущими, то вычисления можно закончить. в комментарии в начале программы дан пример магического квадрата для проверки.
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 ((i< n) and flag) do begin i: =i+1; for j: =1 to n do sum[i mod 2]: =sum[i mod 2]+m[i,j]; if sum[0]< > sum[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 ((j< n) and flag) do begin j: =j+1; for i: =1 to n do sum[j mod 2]: =sum[j mod 2]+m[i,j]; if sum[0]< > sum[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.
Var a: array[1..10] of integer; i,j,k: integer; begin for i: = 1 to 10 do begin a[i]: =random(81)-40; write(a[i],' '); end; writeln; for i: = 1 to 10 do for j: = 1 to 9 do if a[j]> a[j+1] then begin k: =a[j]; a[j]: =a[j+1]; a[j+1]: =k; end; for i: = 10 downto 1 do write(a[i],' '); end.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
bestia195423.12.2020 03:49
-
lllGlitcherlll19.04.2021 20:42
-
Rimmakrasa28.01.2020 18:56
-
Lililililililiza07.12.2022 23:01
-
AleksandrO0s24.04.2020 11:01
-
ясин959502.11.2021 18:43
-
Мариянадубу31.07.2021 21:59
-
fsulleymanzade11.02.2021 22:21
-
Timofry16.01.2020 15:57
-
Kosmen2111.03.2020 01:50
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.