|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
17.12.2008, 21:44 | #1 |
Регистрация: 17.12.2008
Сообщений: 5
|
Магический квадрат
Помогите решить задачу.
Магическим квадратом порядка n называется квадратная таблица размера nxm, составленная из чисел 1,2,...,n(в квадрате) так, что сума по каждому столбцу, каждой строке и каждой из двух диагоналей равны между собой. Дана целочисельная квадратная матрица порядка 5, определить является ли она магическим квадратом |
17.12.2008, 22:39 | #2 |
Регистрация: 17.12.2008
Сообщений: 5
|
program rgr1;
uses crt; type mas=array[1..5,1..5] of integer; var r1,r2,r3,r4,r5,s1,s2,s3,s4,s5,d1,d2 ,i,j:integer; a:mas; procedure showmatrix(m:mas); {Процедура друку матриці} begin {Початок тіла процедури} for i:= 1 to 5 do begin for j:= 1 to 5 do write(m[i, j]:3); {Друк члена матриці} writeln; end; writeln('------------------------------------------------------------------------'); end; {Кінець тіла процедури} begin clrscr; {Початок тіла програми} writeln('Розрахунково-графічна робота (задача №1014)'); writeln('------------------------------------------------------------------------'); writeln('Виконав ст.гр. КМ-805 Плинько Р.В.'); writeln('Перевірив ас. Якимук Л.А.'); writeln('------------------------------------------------------------------------'); writeln('Початок роботи програми'); writeln('------------------------------------------------------------------------'); for i:=1 to 5 do for j:=1 to 5 do begin write('Введіть a[',i,',',j,']: '); readln(a[i,j]); {Ввід члена з клавіатури} end; showmatrix(a); s1:=0;s2:=0;s3:=0;s4:=0;s5:=0; for i:=1 to 5 do begin s1:=s1+a[i,1]; s2:=s2+a[i,2]; s3:=s3+a[i,3]; s4:=s4+a[i,4]; s5:=s5+a[i,5]; end; r1:=0; r2:=0; r3:=0; r4:=4; r5:=0; for j:=1 to 5 do begin r1:=r1+a[1,j]; r2:=r1+a[2,j]; r3:=r1+a[3,j]; r4:=r1+a[4,j]; r5:=r1+a[5,j]; end; d1:=0; d2:=0; for i:=1 to 5 do d1:=d1+a[i,i]; for j:=1 to 5 do d2:=d2+a[6-j,j]; if (s1=s2) and (s1=s3) and (s1=s4) {and (s1=s5) and (s1=r1) and (s1=r2 and (s1=r3) and (s1=r4) and (s1=r5) and (s1=d1) and (s2=d2)} then writeln('Це магічний квадрат!') else write('Це не магічний квадрат!'); readln; end. вродь и сделал, но выдает ошибку...помогите плз |
18.12.2008, 13:07 | #3 |
Участник клуба
Регистрация: 10.11.2008
Сообщений: 1,502
|
Код:
Нормальное состояние техники - нерабочее, все остальное частный случай.
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Чтение мыслей компьютером (Магический квадрат) | Arigato | Софт | 17 | 29.09.2010 09:51 |
квадрат в TEdit | wawan93 | Общие вопросы Delphi | 4 | 04.12.2008 12:33 |
Магический квадрат v 0.01 (РПГ демо) | Phoenix77 | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 23 | 03.09.2008 02:20 |
магический куб | Diller | Помощь студентам | 3 | 09.09.2007 11:35 |
создать магический квадрат | nev | Помощь студентам | 8 | 13.06.2007 10:41 |