Написала программу построения пандиагонального квадрата 7-го порядка по общей формуле и по шаблону (общую формулу см. выше).
Шаблон выбран такой (из вычетов по модулю 7):
Код:
4 6 3 5 3 5 3
3 5 3 4 6 3 5
6 3 5 3 5 3 4
5 3 4 6 3 5 3
3 5 3 5 3 4 6
3 4 6 3 5 3 5
5 3 5 3 4 6 3
Массив простых чисел под этот шаблон (ровно из 49 чисел):
Код:
3 17 31 59 73 101 157
199 227 241 269 283 311 353
367 409 479 521 563 577 619
11 53 67 109 137 151 179
5 19 47 61 89 103 131
173 229 257 271 313 383 397
13 41 83 97 139 167 223
Массив даёт магическую константу
1401.
Разбиваем весь массив на 4 группы:
Группа 1 – числа вида
(на картинках белые ячейки):
3 17 31 59 73 101 157
199 227 241 269 283 311 353
367 409 479 521 563 577 619
Группа 2 – числа вида
(голубые ячейки):
11 53 67 109 137 151 179
Группа 3 – числа вида
(сиреневые ячейки):
5 19 47 61 89 103 131
173 229 257 271 313 383 397
Группа 3 – числа вида
(розовые ячейки):
13 41 83 97 139 167 223
40 элементов квадрата находятся быстро. Для 40 элементов в программе уже перебираются 23 свободных переменных. Остаётся незадействованным только один свободный элемент - a14.
41-ый элемент вычисляется ещё на этапе с 23 свободными элементами, однако до него программа не добирается - впадает в глубокую задумчивость
Вполне возможно, что решения и не существует для данных начальных условий.
На этой картинке вы видите полуфабрикат с 40 элементами.
Теперь присваиваю свободному элементу a14 неиспользованное значение 103 из группы 3, которой он принадлежит, и вычисляю вручную все оставшиеся зависимые элементы.
Что из этого получилось, показано на картинке.
Как бы там ни было (последние элементы и не простые, и отрицательные, и не принадлежат заданному массиву), а квадрат получился пандиагональный с магической константой
1401.
Дальше такая идея: добавить в каждую группу ещё немножко чисел соответствующего вида.
Будет больше шансов, что квадрат построится.