Н. Макарова

 

ГРУППЫ ВЗАИМНО ОРТОГОНАЛЬНЫХ  ЛАТИНСКИХ КВАДРАТОВ НЕЧЁТНОГО ПОРЯДКА

 

или

 

НОВЫЕ АСПЕКТЫ МЕТОДА ЛАТИНСКИХ КВАДРАТОВ

 

Часть VIII

 

Данная страница является продолжением страницы

http://www.natalimak1/narod.ru/grolk3.htm

а также цикла статей “Новые аспекты метода латинских квадратов”.

 

 

В предыдущей части статьи я остановилась на построении пары ОЛК 21-го порядка, из которой строятся идеальные магические квадраты. Напомню читателям, что рассматривается группа нечётных порядков кратных 3. Следующий порядок в этой группе n = 27. Данный порядок является степенью простого числа 3, поэтому группа взаимно ортогональных латинских квадратов этого порядка полная и состоит из 26 квадратов. В этой группе MOLS только два латинских квадрата не диагональные, остальные 24 диагональные. Из этих диагональных латинских квадратов можно составить 276 пар ОЛК пригодных для построения магических квадратов, из каждой пары ОЛК можно построить два магических квадрата, итого – 552 квадрата. Однако ни один из этих магических квадратов не будет ни ассоциативным, ни идеальным. Пара ОЛК, из которой строятся ассоциативные магические квадраты 27-го порядка, составляется просто (см. аналогичные пары ОЛК для порядков 9 и 15 в предыдущей части статьи). В точной аналогии с парами ОЛК для порядков 9, 15 и 21 строю первый латинский квадрат 27-го порядка для пары, которая даёт идеальные магические квадраты (рис. 1).

 

Первый латинский квадрат 27-го порядка

 

 

0

1

8

7

6

14

13

12

20

19

18

25

26

24

3

4

5

9

10

11

15

16

17

21

22

23

2

3

4

5

9

10

11

15

16

17

21

22

23

2

0

1

8

7

6

14

13

12

20

19

18

25

26

24

1

8

7

6

14

13

12

20

19

18

25

26

24

3

4

5

9

10

11

15

16

17

21

22

23

2

0

4

5

9

10

11

15

16

17

21

22

23

2

0

1

8

7

6

14

13

12

20

19

18

25

26

24

3

8

7

6

14

13

12

20

19

18

25

26

24

3

4

5

9

10

11

15

16

17

21

22

23

2

0

1

5

9

10

11

15

16

17

21

22

23

2

0

1

8

7

6

14

13

12

20

19

18

25

26

24

3

4

7

6

14

13

12

20

19

18

25

26

24

3

4

5

9

10

11

15

16

17

21

22

23

2

0

1

8

9

10

11

15

16

17

21

22

23

2

0

1

8

7

6

14

13

12

20

19

18

25

26

24

3

4

5

6

14

13

12

20

19

18

25

26

24

3

4

5

9

10

11

15

16

17

21

22

23

2

0

1

8

7

10

11

15

16

17

21

22

23

2

0

1

8

7

6

14

13

12

20

19

18

25

26

24

3

4

5

9

14

13

12

20

19

18

25

26

24

3

4

5

9

10

11

15

16

17

21

22

23

2

0

1

8

7

6

11

15

16

17

21

22

23

2

0

1

8

7

6

14

13

12

20

19

18

25

26

24

3

4

5

9

10

13

12

20

19

18

25

26

24

3

4

5

9

10

11

15

16

17

21

22

23

2

0

1

8

7

6

14

15

16

17

21

22

23

2

0

1

8

7

6

14

13

12

20

19

18

25

26

24

3

4

5

9

10

11

12

20

19

18

25

26

24

3

4

5

9

10

11

15

16

17

21

22

23

2

0

1

8

7

6

14

13

16

17

21

22

23

2

0

1

8

7

6

14

13

12

20

19

18

25

26

24

3

4

5

9

10

11

15

20

19

18

25

26

24

3

4

5

9

10

11

15

16

17

21

22

23

2

0

1

8

7

6

14

13

12

17

21

22

23

2

0

1

8

7

6

14

13

12

20

19

18

25

26

24

3

4

5

9

10

11

15

16

19

18

25

26

24

3

4

5

9

10

11

15

16

17

21

22

23

2

0

1

8

7

6

14

13

12

20

21

22

23

2

0

1

8

7

6

14

13

12

20

19

18

25

26

24

3

4

5

9

10

11

15

16

17

18

25

26

24

3

4

5

9

10

11

15

16

17

21

22

23

2

0

1

8

7

6

14

13

12

20

19

22

23

2

0

1

8

7

6

14

13

12

20

19

18

25

26

24

3

4

5

9

10

11

15

16

17

21

25

26

24

3

4

5

9

10

11

15

16

17

21

22

23

2

0

1

8

7

6

14

13

12

20

19

18

23

2

0

1

8

7

6

14

13

12

20

19

18

25

26

24

3

4

5

9

10

11

15

16

17

21

22

26

24

3

4

5

9

10

11

15

16

17

21

22

23

2

0

1

8

7

6

14

13

12

20

19

18

25

2

0

1

8

7

6

14

13

12

20

19

18

25

26

24

3

4

5

9

10

11

15

16

17

21

22

23

24

3

4

5

9

10

11

15

16

17

21

22

23

2

0

1

8

7

6

14

13

12

20

19

18

25

26

 

Рис. 1

 

Точно так же, как это было показано для порядка 21, можно составить второй латинский квадрат ортогональный данному квадрату с рис. 1 несколькими способами. Покажу здесь только один способ – получаем второй латинский квадрат из первого отражением относительно горизонтальной оси симметрии. Не буду показывать второй латинский квадрат: выполнить отражение относительно горизонтальной оси симметрии очень просто. Покажу только один идеальный магический квадрат, построенный из полученной таким образом пары ОЛК:

 

25  31  221  195  172  389  363  340  557  531  508  698  726  651  82  110  144  251  277  312  419  445  480  587  613  647  81

 84  109  137  252  278  304  420  446  472  588  614  640  80  27  52  220  194  168  388  362  336  556  530  504  697  725  672

 54  241  193  167  384  361  335  552  529  503  693  724  671  105  111  136  245  279  305  412  447  473  580  615  641  73  26

 132  138  244  272  306  413  439  474  581  607  642  74  19  53  243  214  166  383  357  334  551  525  502  692  720  670  104

 242  216  187  382  356  330  550  524  498  691  719  666  103  131  159  246  271  299  414  440  466  582  608  634  75  20  46

 158  267  273  298  407  441  467  574  609  635  67  21  47  235  215  189  403  355  329  546  523  497  687  718  665  99  130

 208  188  405  376  328  545  519  496  686  714  664  98  126  157  266  294  300  406  434  468  575  601  636  68  13  48  236

 265  293  321  408  433  461  576  602  628  69  14  40  237  209  181  404  378  349  544  518  492  685  713  660  97  125  153

 182  397  377  351  565  517  491  681  712  659  93  124  152  261  292  320  429  435  460  569  603  629  61  15  41  229  210

 288  319  428  456  462  568  596  630  62  7  42  230  202  183  398  370  350  567  538  490  680  708  658  92  120  151  260

 399  371  343  566  540  511  679  707  654  91  119  147  259  287  315  427  455  483  570  595  623  63  8  34  231  203  175

 314  423  454  482  591  597  622  56  9  35  223  204  176  391  372  344  559  539  513  700  706  653  87  118  146  255  286

 364  345  560  532  512  702  727  652  86  114  145  254  282  313  422  450  481  590  618  624  55  2  36  224  196  177  392

 421  449  477  589  617  645  57  1  29  225  197  169  393  365  337  561  533  505  701  729  673  85  113  141  253  281  309

 338  553  534  506  694  728  675  106  112  140  249  280  308  417  448  476  585  616  644  78  3  28  218  198  170  385  366

 444  475  584  612  643  77  24  30  217  191  171  386  358  339  554  526  507  695  721  674  108  133  139  248  276  307  416

 555  527  499  696  722  667  107  135  160  247  275  303  415  443  471  583  611  639  76  23  51  219  190  164  387  359  331

 470  579  610  638  72  22  50  240  192  163  380  360  332  547  528  500  688  723  668  100  134  162  268  274  302  411  442

 520  501  689  715  669  101  127  161  270  295  301  410  438  469  578  606  637  71  18  49  239  213  165  379  353  333  548

 577  605  633  70  17  45  238  212  186  381  352  326  549  521  493  690  716  661  102  128  154  269  297  322  409  437  465

 494  682  717  662  94  129  155  262  296  324  430  436  464  573  604  632  66  16  44  234  211  185  402  354  325  542  522

 600  631  65  12  43  233  207  184  401  375  327  541  515  495  683  709  663  95  121  156  263  289  323  432  457  463  572

 684  710  655  96  122  148  264  290  316  431  459  484  571  599  627  64  11  39  232  206  180  400  374  348  543  514  488

 626  60  10  38  228  205  179  396  373  347  564  516  487  677  711  656  88  123  149  256  291  317  424  458  486  592  598

 704  657  89  115  150  257  283  318  425  451  485  594  619  625  59  6  37  227  201  178  395  369  346  563  537  489  676

 58  5  33  226  200  174  394  368  342  562  536  510  678  703  650  90  116  142  258  284  310  426  452  478  593  621  646

 649  83  117  143  250  285  311  418  453  479  586  620  648  79  4  32  222  199  173  390  367  341  558  535  509  699  705

 

Предлагаю читателям составить второй ортогональный соквадрат для латинского квадрата с рис. 1 другим способом, как это сделано в цикле статей из журнала “Recreational Mathematics” для порядков 9 и 15 и показано мной в предыдущей части статьи для порядка 21. Можно составить и пару обобщённых ортогональных латинских квадратов, которая даст идеальные магические квадраты с оригинальной формой начальной цепочки.

 

Всё точно так же можно повторить для следующего порядка 33. Для данного порядка математикам удалось составить группу MOLS, состоящую из 5 квадратов. Мне эта группа неизвестна.

 

Однако пора переходить к обобщению метода. Немного повторю историю построения идеальных магических квадратов нечётного порядка. Все нечётные порядки, начиная с n = 5 (для порядка 3 идеального квадрата не существует), делятся на две группы: порядки не кратные 3 и порядка кратные 3. Так получается, что для этих двух групп алгоритмы построения идеальных магических квадратов хотя и похожие, но несколько различны. Я шла в построении идеальных магических квадратов нечётного порядка путём, в котором метод латинских квадратов стал мне известен после того, как был придуман метод качелей. Здесь будет дано полное представление метода латинских квадратов для построения идеальных магических квадратов нечётного порядка.

Построение идеальных магических квадратов группы порядков не кратных 3 методом латинских квадратов выполняется очень просто. Этому посвящена статья http://www.klassikpoez.narod.ru/idlat.htm

Алгоритм реализован в виде программы, написанной на языке QBASIC.

На рис. 2 показан первый латинский квадрат для пары ОЛК любого нечётного порядка N не кратного 3 (копирую из указанной статьи).

 

0

N-1

n-2

3

2

1

2

1

0

N-1

N-2

3

...

...

...

...

N-2

N-3

N-2

N-3

2

1

0

N-1

 

Рис. 2

 

А это текст программы для построения идеального магического квадрата любого нечётного порядка не кратного 3.

 

ТЕКСТ ПРОГРАММЫ

(язык QBASIC)

 

10 OPEN "MK.txt" FOR OUTPUT AS #1

15 PRINT "VVEDITE PORYADOK KVADRATA"

20 INPUT N

25 IF N / 2 - INT(N / 2) = 0 THEN 15

30 IF N / 3 - INT(N / 3) = O THEN 15

40 DIM A(N, N), C(N, N)

45 A(1, 1) = 0: S = N * (N * N + 1) / 2

50 FOR I = 2 TO N: A(1, I) = N + 1 - I: NEXT I

55 J = 2

60 A(J, 1) = A(J - 1, N - 1): A(J, 2) = A(J - 1, N)

65 FOR X = 3 TO N: A(J, X) = A(J - 1, X - 2): NEXT X

70 J = J + 1

75 IF J > N THEN 125

80 GOTO 60

125 FOR X = 1 TO N

130 FOR Y = 1 TO N

135 C(X, Y) = N * A(X, Y) + A(N - X + 1, Y) + 1

140 NEXT Y

145 NEXT X

150 Z1 = 0: Z2 = 0: Z3 = C(1, 1): Z4 = C(1, N)

152 FOR P = 1 TO N: Z1 = Z1 + C(P, P): Z2 = Z2 + C(N + 1 - P, P): NEXT P

154 FOR Q = 2 TO N: Z3 = Z3 + C(N + 2 - Q, Q): Z4 = Z4 + C(Q, Q - 1): NEXT Q

156 IF Z1 = S THEN IF Z2 = S THEN IF Z3 = S THEN IF Z4 = S THEN 250

158 GOTO 290

250 FOR X = 1 TO N

255 FOR Y = 1 TO N

260 PRINT C(X, Y);

265 PRINT #1, C(X, Y);

270 NEXT Y

275 PRINT : PRINT #1,

280 NEXT X

282 PRINT : PRINT Z1; Z2; Z3; Z4: GOTO 300

290 PRINT "PROIZOSHLA OSHIBKA!"

300 END

 

Примечание: замечу, что я немного подкорректировала программу. Отличие от программы, приведённой в указанной выше статье, состоит в том, что в настоящей программе не строится второй латинский квадрат, просто в формуле для построения магического квадрата учитывается, что второй латинский квадрат получается из первого латинского квадрата отражением относительно горизонтальной оси симметрии (см. строку 135). Это позволило мне несколько увеличить максимальный порядок идеального квадрата, который строится по этой программе. По прежней программе можно построить самый большой идеальный квадрат порядка 97, приведённая сейчас программа построила квадрат порядка 127. Кроме того, здесь добавлена проверка сумм в главных и двух разломанных диагоналях построенного магического квадрата, на всякий случай.

 

Построение идеальных магических квадратов группы порядков кратных 3 методом латинских квадратов раньше было реализовано мной только на основании метода качелей, то есть я могла составить нужную для построения идеального магического квадрата пару ОЛК, зная заранее номера циклов качания качелей. Теперь я могу полностью отвлечься от метода качелей и разработать алгоритм для данной группы порядков на основании показанных выше примеров из цикла статей журнала “Recreational Mathematics”. Это будет в чистом виде метод латинских квадратов, для которого не нужна никакая дополнительная информация.

Итак, для любого порядка n = 3(2k + 1), k = 1, 2, 3 … надо составить пару ортогональных латинских квадратов, их которой можно построить идеальный магический квадрат. Выше было показано решение этой задачи на конкретных примерах для порядков 9, 15, 21 и 27. Из этих примеров видно, что достаточно составить первую строку первого латинского квадрата. Дальше всё выполняется очень просто. В первом латинском квадрате каждая следующая строка получается из предыдущей циклическим сдвигом с постоянным шагом, второй латинский квадрат, ортогональный первому, получается из первого отражением относительно горизонтальной оси симметрии (возможны другие варианты, но мы выберем указанный способ получения второго латинского квадрата). Значит, составив первую строку первого латинского квадрата, мы полностью решим поставленную задачу. Дальше всё выполняется элементарно.

Рассмотрим первые строки первых латинских квадратов из конкретных примеров:

 

n = 9:             0  1  7  8  6  3  4  5  2

n = 15:           0  1  8  7  6  13  14  12  3  4  5  9  10  11  2

n = 21:           0  1  8  7  6  14  13  12  19  20  18  3  4  5  9  10  11  15  16  17  2

n = 27:           0 1 8 7 6 14 13 12 20 19 18 25 26 24 3 4 5 9 10 11 15 16 17 21 22 23 2

 

Закономерности составления первой строки очевидны. Чтобы они стали ещё более наглядными, составлю следующую таблицу из первых строк первого латинского квадрата для порядков 9 - 33 (рис. 3):

 

 

0

1

7

8

6

3

4

5

2

 

 

0

1

8

7

6

13

14

12

3

4

5

9

10

11

2

 

 

0

1

8

7

6

14

13

12

19

20

18

3

4

5

9

10

11

15

16

17

2

 

 

0

1

8

7

6

14

13

12

20

19

18

25

26

24

3

4

5

9

10

11

15

16

17

21

22

23

2

 

0

1

8

7

6

14

13

12

20

19

18

26

25

24

31

32

30

3

4

5

9

10

11

15

16

17

21

22

23

27

28

29

2

 

Рис. 3

 

Теперь напишу общую формулу для первой строки в первом латинском квадрате пары ОЛК порядка n = 3(2k + 1), k = 2, 3, 4 …:

 

0; 1; 8; 7; 6; … 8+6*(k-2); 7+6*(k-2); 6+6*(k-2); n-2; n-1; n-3; 3; 4; 5;… 3+6*(k-1); 4+6*(k-1); 5+6*(k-1);  2

 

Понятно, что для порядка n = 9 (k = 1) формула не работает. Вспоминаю, что при составлении таблицы начальных цепочек для группы частных решений в методе качелей (для построения идеальных магических квадратов рассматриваемой группы порядков) я начинала тоже с порядка n = 15, начальная цепочка идеального квадрата порядка 9 в таблицу не вписалась.

 

Итак, всё готово для того, чтобы реализовать алгоритм построения идеальных магических квадратов нечётного порядка кратного 3 методом латинских квадратов. Далее можно скомпоновать общую программу из двух частей: первая часть – для порядков не кратных 3 (эта программа приведена выше), вторая часть – для порядков кратных 3. Таким образом будет получена общая программа для построения методом латинских квадратов идеального магического квадрата любого нечётного порядка, начиная с n = 5.

Замечу, что в программу для порядков кратных 3 можно заложить и другие  способы составления второго латинского квадрата, которые были показаны в статье.

                                                                     ***

 

 

Представляю текст программы для построения идеальных магических квадратов нечётного порядка кратного 3, начиная с n = 9, методом латинских квадратов.

 

ТЕКСТ ПРОГРАММЫ

(язык QBASIC)

 

 

5 OPEN "MK.txt" FOR OUTPUT AS #1

10 PRINT "VVEDITE PORYADOK KVADRATA"

15 INPUT N

22 IF N / 2 - INT(N / 2) = 0 THEN 15

25 IF N / 3 - INT(N / 3) <> 0 THEN 15

30 DIM A(N, N), B(N, N)

35 S = N * (N * N + 1) / 2: M = (N + 1) / 2

37 IF N <> 9 THEN 50

45 A(1, 1) = 0: A(1, 2) = 1: A(1, 3) = 7: A(1, 4) = 8: A(1, 5) = 6: A(1, 6) = 3: A(1, 7) = 4: A(1, 8) = 5: A(1, 9) = 2: GOTO 300

50 A(1, 1) = 0: A(1, 2) = 1: A(1, 3) = 8: A(1, 4) = 7: A(1, 5) = 6: A(1, N) = 2

52 A(1, M - 2) = N - 2: A(1, M - 1) = N - 1: A(1, M) = N - 3: A(1, M + 1) = 3: A(1, M + 2) = 4: A(1, M + 3) = 5

54 Q = 5

56 IF Q + 1 = M - 2 THEN 62

58 A(1, Q + 1) = A(1, Q - 2) + 6: A(1, Q + 2) = A(1, Q - 1) + 6: A(1, Q + 3) = A(1, Q) + 6

60 Q = Q + 3: GOTO 56

62 Q = M + 3

64 IF Q + 1 = N THEN 300

66 A(1, Q + 1) = A(1, Q - 2) + 6: A(1, Q + 2) = A(1, Q - 1) + 6: A(1, Q + 3) = A(1, Q) + 6

68 Q = Q + 3: GOTO 64

300 J = 2

302 FOR L = 1 TO M - 1

304 A(J, L) = A(J - 1, L + M)

306 NEXT L

308 FOR L = M TO N: A(J, L) = A(J - 1, L - M + 1): NEXT L

310 J = J + 1

312 IF J > N THEN 320

314 GOTO 302

320 FOR R = 1 TO N

322 FOR T = 1 TO N

324 B(R, T) = N * A(R, T) + A(N + 1 - R, T) + 1

326 NEXT T

328 NEXT R

330 Z1 = 0: Z2 = 0: Z3 = B(1, 1): Z4 = B(1, N)

332 FOR X = 1 TO N: Z1 = Z1 + B(X, X): Z2 = Z2 + B(N + 1 - X, X): NEXT X

334 FOR Y = 2 TO N: Z3 = Z3 + B(N + 2 - Y, Y): Z4 = Z4 + B(Y, Y - 1): NEXT Y

336 IF Z1 = S THEN IF Z2 = S THEN IF Z3 = S THEN IF Z4 = S THEN 420

338 PRINT "PROIZOSHLA OSHIBKA!": GOTO 500

420 FOR X = 1 TO N

422 FOR Y = 1 TO N

424 PRINT B(X, Y);

425 PRINT #1, B(X, Y);

426 NEXT Y

428 PRINT : PRINT #1,

430 NEXT X

432 PRINT : PRINT Z1; Z2; Z3; Z4

500 END

 

Примечание: если порядок квадрата равен 9, то первая строка первого латинского квадрата не строится по общей формуле, она строится непосредственным присвоением значений элементам этой строки (см. строку 45 в программе).

 

Язык QBASIC позволил мне построить идеальный магический квадрат максимального (нечётного порядка кратного 3) n = 123. Ниже показан идеальный магический квадрат 33-го порядка, построенный по данной программе.

 

31  37  269  237  208  473  441  412  677  645  616  881  849  820  1052  1086  993  100  134  174  305  337  378  509  541  582  713  745  786  917  949  989  99

 102  133  167  306  338  370  510  542  574  714  746  778  918  950  982  98  33  64  268  236  204  472  440  408  676  644  612  880  848  816  1051  1085  1020

 66  295  235  203  468  439  407  672  643  611  876  847  815  1047  1084  1019  129  135  166  299  339  371  502  543  575  706  747  779  910  951  983  91  32

 162  168  298  332  372  503  535  576  707  739  780  911  943  984  92  25  65  297  262  202  467  435  406  671  639  610  875  843  814  1046  1080  1018  128

 296  264  229  466  434  402  670  638  606  874  842  810  1045  1079  1014  127  161  195  300  331  365  504  536  568  708  740  772  912  944  976  93  26  58

 194  327  333  364  497  537  569  700  741  773  904  945  977  85  27  59  289  263  231  493  433  401  666  637  605  870  841  809  1041  1078  1013  123  160

 256  230  495  460  400  665  633  604  869  837  808  1040  1074  1012  122  156  193  326  360  366  496  530  570  701  733  774  905  937  978  86  19  60  290

 325  359  393  498  529  563  702  734  766  906  938  970  87  20  52  291  257  223  494  462  427  664  632  600  868  836  804  1039  1073  1008  121  155  189

 224  487  461  429  691  631  599  864  835  803  1035  1072  1007  117  154  188  321  358  392  525  531  562  695  735  767  898  939  971  79  21  53  283  258

 354  391  524  558  564  694  728  768  899  931  972  80  13  54  284  250  225  488  454  428  693  658  598  863  831  802  1034  1068  1006  116  150  187  320

 489  455  421  692  660  625  862  830  798  1033  1067  1002  115  149  183  319  353  387  523  557  591  696  727  761  900  932  964  81  14  46  285  251  217

 386  519  556  590  723  729  760  893  933  965  73  15  47  277  252  218  481  456  422  685  659  627  889  829  797  1029  1066  1001  111  148  182  315  352

 448  423  686  652  626  891  856  796  1028  1062  1000  110  144  181  314  348  385  518  552  589  722  756  762  892  926  966  74  7  48  278  244  219  482

 517  551  585  721  755  789  894  925  959  75  8  40  279  245  211  483  449  415  687  653  619  890  858  823  1027  1061  996  109  143  177  313  347  381

 416  679  654  620  883  857  825  1054  1060  995  105  142  176  309  346  380  513  550  584  717  754  788  921  927  958  68  9  41  271  246  212  475  450

 546  583  716  750  787  920  954  960  67  2  42  272  238  213  476  442  417  680  646  621  884  850  824  1056  1087  994  104  138  175  308  342  379  512

 681  647  613  885  851  817  1055  1089  1021  103  137  171  307  341  375  511  545  579  715  749  783  919  953  987  69  1  35  273  239  205  477  443  409

 578  711  748  782  915  952  986  96  3  34  266  240  206  469  444  410  673  648  614  877  852  818  1048  1088  1023  130  136  170  303  340  374  507  544

 640  615  878  844  819  1049  1081  1022  132  163  169  302  336  373  506  540  577  710  744  781  914  948  985  95  30  36  265  233  207  470  436  411  674

 709  743  777  913  947  981  94  29  63  267  232  200  471  437  403  675  641  607  879  845  811  1050  1082  1015  131  165  196  301  335  369  505  539  573

 608  871  846  812  1042  1083  1016  124  164  198  328  334  368  501  538  572  705  742  776  909  946  980  90  28  62  294  234  199  464  438  404  667  642

 738  775  908  942  979  89  24  61  293  261  201  463  431  405  668  634  609  872  838  813  1043  1075  1017  125  157  197  330  361  367  500  534  571  704

 873  839  805  1044  1076  1009  126  158  190  329  363  394  499  533  567  703  737  771  907  941  975  88  23  57  292  260  228  465  430  398  669  635  601

 770  903  940  974  84  22  56  288  259  227  492  432  397  662  636  602  865  840  806  1036  1077  1010  118  159  191  322  362  396  526  532  566  699  736

 832  807  1037  1069  1011  119  151  192  323  355  395  528  559  565  698  732  769  902  936  973  83  18  55  287  255  226  491  459  399  661  629  603  866

 901  935  969  82  17  51  286  254  222  490  458  426  663  628  596  867  833  799  1038  1070  1003  120  152  184  324  356  388  527  561  592  697  731  765

 800  1030  1071  1004  112  153  185  316  357  389  520  560  594  724  730  764  897  934  968  78  16  50  282  253  221  486  457  425  690  630  595  860  834

 930  967  77  12  49  281  249  220  485  453  424  689  657  597  859  827  801  1031  1063  1005  113  145  186  317  349  390  521  553  593  726  757  763  896

 1032  1064  997  114  146  178  318  350  382  522  554  586  725  759  790  895  929  963  76  11  45  280  248  216  484  452  420  688  656  624  861  826  794

 962  72  10  44  276  247  215  480  451  419  684  655  623  888  828  793  1025  1065  998  106  147  179  310  351  383  514  555  587  718  758  792  922  928

 1058  999  107  139  180  311  343  384  515  547  588  719  751  791  924  955  961  71  6  43  275  243  214  479  447  418  683  651  622  887  855  795  1024

 70  5  39  274  242  210  478  446  414  682  650  618  886  854  822  1026  1057  992  108  140  172  312  344  376  516  548  580  720  752  784  923  957  988

 991  101  141  173  304  345  377  508  549  581  712  753  785  916  956  990  97  4  38  270  241  209  474  445  413  678  649  617  882  853  821  1053  1059

 

 

Итак, объединив две приведённые здесь программы в одну, вы можете получить общую программу для построения идеальных магических квадратов любого нечётного порядка n = 2k + 1, k = 2, 3, 4, … методом латинских квадратов.

На языке QBASIC вы сможете построить идеальные магические квадраты порядков 5 – 127. Переписав программу на другой язык, вы построите квадраты больших порядков.

 

Интересно отметить, что полученная мной раньше методом качелей группа частных решений для идеальных магических квадратов нечётного порядка кратного 3 не совпадает с группой частных решений, получаемой по представленному здесь алгоритму. Таким образом, мы имеем вторую группу частных решений.

 

Покажу связь метода латинских квадратов и метода качелей, которая была установлена мной раньше. Для демонстрации возьму идеальный магический квадрат 9-го порядка, построенный по представленному здесь алгоритму (рис. 4).

 

7

13

68

78

57

28

38

53

27

30

37

47

26

9

16

67

77

60

18

70

76

59

33

39

46

20

8

42

48

19

2

17

72

79

58

32

71

81

61

31

41

51

21

1

11

50

24

3

10

65

80

63

34

40

74

62

36

43

49

23

6

12

64

22

5

15

66

73

56

35

45

52

55

29

44

54

25

4

14

69

75

 

Рис. 4

 

Ещё надо показать первый латинский квадрат в паре ОЛК, из которой этот идеальный магический квадрат построен (рис. 5).

 

0

1

7

8

6

3

4

5

2

3

4

5

2

0

1

7

8

6

1

7

8

6

3

4

5

2

0

4

5

2

0

1

7

8

6

3

7

8

6

3

4

5

2

0

1

5

2

0

1

7

8

6

3

4

8

6

3

4

5

2

0

1

7

2

0

1

7

8

6

3

4

5

6

3

4

5

2

0

1

7

8

 

Рис. 5

 

А теперь показываю образующую таблицу идеального магического квадрата с рис. 4, если бы он строился методом качелей (рис. 6):

 

 

1

11

71

81

61

31

41

51

21

-1

2

17

72

79

58

32

42

48

19

-6

8

18

70

76

59

33

39

46

20

-1

9

16

67

77

60

30

37

47

26

2

7

13

68

78

57

28

38

53

27

3

4

14

69

75

55

29

44

54

25

-1

5

15

66

73

56

35

45

52

22

-1

6

12

64

74

62

36

43

49

23

3

3

10

65

80

63

34

40

50

24

2

k=0

k=1

k=7

k=8

k=6

k=3

k=4

k=5

k=2

 

Рис. 6

 

Читатели, знакомые с методом качелей, знают, что в последней строке образующей таблицы находятся номера циклов качания качелей. Эти номера и определяют первую строку первого латинского квадрата (см. на рис. 5). В столбцах образующей таблицы мы имеем набор чисел, соответствующий данному номеру цикла качания качелей. Так, например, циклу k=0 соответствует начальная цепочка магического квадрата – числа от 1 до 9, циклу k=1 соответствует набор чисел от 10 до 18 и т. д.  На рис. 4 и рис. 5 закрашены три первые цикла в первом латинском квадрате и в магическом квадрате, цикл k=0 – белые ячейки, цикл k=1 – голубые ячейки, цикл k=7 – розовые ячейки. Связь циклов качания качелей в латинском квадрате, в образующей таблице и в магическом квадрате совершенно очевидна. Более подробно о связи двух методов читайте в ранних статьях, посвящённых построению идеальных магических квадратов.

 

***

 

Читайте мою виртуальную книгу Волшебный мир магических квадратов”:

 

http://www.klassikpoez.narod.ru/glavnaja.htm

 

 

8 – 10 февраля 2009 г.

г. Саратов

 

       Пишите мне!

Рейтинг@Mail.ru

На главную страницу

 



Hosted by uCoz