Занялась поиском вариантов наименьших магических квадратов из простых чисел.
Как я уже говорила, сначала формировала массивы подбором, без программы. Для некоторых порядков и подбором удалось найти несколько вариантов массива. Понятно, что каждый вариант массива даёт нам оригинальный магический квадрат. Приведу пример квадрата порядка 9.
Ранее мной были найдены два варианта массива. Берётся массив первых 81 простых чисел (начинаем с числа 3): 3, 5, …, 419, 421. Затем производятся замены одного или двух (а, может быть, даже трёх) чисел так, чтобы сумма чисел полученного массива была равна 1731*9=15579,
– это минимальная магическая константа квадрата 9-го порядка из простых чисел. Подбором я нашла только два варианта массива:
1. заменить число 389 на число 433;
2. заменить число 419 на число 463.
Недавно составила простенькую программку для формирования массива. Суть её такова. Для квадрата порядка
первые
простых чисел берутся фиксированные, а остальные 6 чисел варьируются, причём для варьирования берутся ещё следующие 6 чисел, то есть 6 чисел выбираются из 12. Понятно, что эта программа не может найти все варианты. Так, например, приведённый выше второй вариант для квадрата порядка 9 не находится этой программой. Программу можно составить с более высокой точностью поиска, для этого надо увеличить количество варьируемых чисел, но тогда она будет намного дольше работать. А моя программка работает очень быстро. Тем не менее, по этой программе я нашла много дополнительных вариантов, которые ранее не были найдены путём подбора. Продолжу варианты для квадрата порядка 9, которые нашлись по программе:
3. заменить числа 401 и 419 на числа 431 и 433;
4. заменить числа 409 и 419 на числа 433 и 439;
5. заменить числа 409 и 421 на числа 431 и 443.
Таким образом, найдено три новых варианта. Далее приведена таблица вариантов массива для квадратов порядков 6 – 35; в первой колонке количество вариантов массива, найденных ранее подбором, во второй колонке – количество вариантов массива, найденных по программе.
Код:
n = 6 1 1
n = 7 2 2
n = 8 1 1
n = 9 2 5
n = 10 2 2
n = 11 1 2
n = 12 1 1
n = 13 2 2
n = 14 1 5
n = 15 1 1
n = 16 1 1
n = 17 1 9
n = 18 1 1
n = 19 1 1
n = 20 1 1
n = 21 1 3
n = 22 1 4
n = 23 1 1
n = 24 1 1
n = 25 1 5
n = 26 2 2
n = 27 2 8
n = 28 1 1
n = 29 4 4
n = 30 1 1
n = 31 2 2
n = 32 1 4
n = 33 1 1
n = 34 1 1
n = 35 1 1
Теперь по программам ice00 собираюсь построить все варианты наименьших магических квадратов из простых чисел. Таблицу вариантов, конечно, надо продолжить для следующих порядков. Буду благодарна всем, кто найдёт дополнительные варианты массивов в приведённой таблице.
Точно так же надо найти все варианты массивов для наименьших магических квадратов из простых чисел и числа 1. Например, для квадрата порядка 13 этой группы даже подбором было найдено 6 вариантов массива.
***
Одна мысль по поводу алгоритма построения наименьшего квадрата из последовательных смитов 5 и 6 порядков. В программу можно добавить блок нахождения потенциальных массивов, то есть программа будет находить потенциальные массивы и проверять их на предмет построения из данного массива магического квадрата. Тогда не придётся вводить в программу массивы из внешнего файла.
Можно составить также программу определения потенциальных массивов и для произвольных смитов, аналогичную только что описанной. Но, как я уже сказала, чтобы добиться в этом случае нахождения всех потенциальных массивов, программу надо составлять с большим интервалом варьирования чисел. Для массива из последовательных чисел всё намного проще.