2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему На страницу Пред.  1 ... 61, 62, 63, 64, 65, 66, 67 ... 192  След.
 
 Re: Магические квадраты
Сообщение17.10.2009, 17:12 


17/10/09
26
Я просто привел пример тому, что даже если взять последовательный ряд смитов, то квадрат с константой 2460 по сути не получается.
Только что рассматривал квадрат с суммой 3873. Если посчитать, то симметричные числа, относительно центра в этом квадрате должны быть равны сумме 1291. Но в указанном массиве только две пары равны указанной сумме. Буду разбираться дальше.

 Профиль  
                  
 
 Re: Магические квадраты
Сообщение17.10.2009, 17:21 
Аватара пользователя


26/09/09
95
Programs for checking only diagonal having as input a sequence that are from a magic square (in all but not diagonals) are ready. Now I'm compiling them for Windows from order 6 to 10.

However, I had check order 8 of Smith with a previous candidate without success.

 Профиль  
                  
 
 Re: Магические квадраты
Сообщение17.10.2009, 18:14 
Заблокирован
Аватара пользователя


22/03/08

7154
Саратов
ice00 в сообщении #252483 писал(а):
Programs for checking only diagonal having as input a sequence that are from a magic square (in all but not diagonals) are ready. Now I'm compiling them for Windows from order 6 to 10.
However, I had check order 8 of Smith with a previous candidate without success.

Но вы ведь, наверное, проверили только одного кандидата? А у меня таких кандидатов (полумагических квадратов) очень много. Может быть, хоть один из них превратится в магический квадрат :wink:

 Профиль  
                  
 
 Re: Магические квадраты
Сообщение17.10.2009, 18:43 
Аватара пользователя


26/09/09
95
Yes, I test only one square.

Here the programs:

http://www.4shared.com/file/141519821/ba244538/pmsd6-10.html

Use as previous but with a magic square as sequence of numbers.
Test all methods, like C3, B2, A1, D3

 Профиль  
                  
 
 Re: Магические квадраты
Сообщение18.10.2009, 09:05 
Заблокирован
Аватара пользователя


22/03/08

7154
Саратов
ice00
Отчитываюсь :) Я проверила работу ваших программ для порядков 8 и 10. Для порядка 10 ввела магический квадрат из последовательных смитов, который раньше построила по своей программе. Ваша программа сразу же возвратила этот квадрат и сообщила, что магический квадрат получен. Вот показываю результат этого теста:
Код:
ORDER=10  MAGIC=15932

382  648  861  1111 1449 1952 2182 2218 2515 2614
915  1755 852  2373 2745 2067 1881 562  2155 627 
1894 1626 2038 535  2578 2079 2605 778  517  1282
2409 576  588  2227 645  762  1966 2751 1642 2366
1219 2461 1795 985  526  1935 454  2688 2362 1507
2583 1086 1633 2484 1858 2286 438  2173 663  728 
2576 1842 1921 391  1284 654  2556 1872 1255 1581
2326 825  634  2839 2475 913  690  483  1962 2785
706  2679 2888 1822 1736 1908 895  729  1903 666 
922  2434 2722 1165 636  1376 2265 1678 958  1776

YUPPY!!!!!!!!!!!!!!!!!

Далее проверила программу для порядка 8, ввела полумагический квадрат Франклина, программа сразу же нашла магический квадрат (когда я занималась исследованием квадратов Франклина, превратила этот полумагический квадрат в магический с помощью перестановки только строк).
Итак, программы работают, но... Как мне кажется, есть один недостаток: делая диагонали, вы нарушаете строки. У меня получались, например, такие квадраты, в которых суммы чисел в столбцах и в диагоналях правильные, а суммы чисел в некоторых строках не равны магической константе. Вы используете какие-то хитрые методы, чтобы составить диагонали. Если, например, выполнять только перестановку строк и/или столбцов, то суммы чисел в строках и в столбцах при этом сохранятся. Думаю, что надо использовать такие методы, чтобы они не приводили к изменению сумм чисел в строках и в столбцах. Иначе весь эффект исчезает: диагонали делаем, а строки (или столбцы) разрушаем.
И ещё один нюанс: виновата - не предусмотрела сразу. Я проверила сейчас 50 полумагических квадратов 10-го порядка. Но каждый такой квадрат мне надо заново вводить в исходный файл и снова набирать командную строку. Согласитесь, что это очень неудобно :cry:
Надо бы составить программу так, чтобы она проверяла сразу несколько полумагических квадратов (например, 200 или 500), которые все будут находиться в исходном файле. Но не смею просить вас ещё раз переделывать программу :oops:
Я могу сгенерировать полумагические квадраты в любом количестве. Если хотите, могу прислать вам исходный файл, содержащий штук 500 таких квадратов, а вы сами чуть-чуть подкорректируете программу и проверите все эти квадраты разом.
Очень интересно - почему такой квадрат не находится? Неужели он не существует? Но вот перед этим и квадрат 11-го порядка тоже не хотел строиться, а потом построился. У меня получались сейчас такие квадраты, в которых нет магической суммы только в двух строках. Но это всё равно, что нет сумм в двух диагоналях :) Квадрат всё равно не магический! Но при этом мы имеем очень много полумагических квадратов. Есть магический или нет?

 Профиль  
                  
 
 Re: Магические квадраты
Сообщение18.10.2009, 11:04 
Аватара пользователя


26/09/09
95
Цитата:
You are using some clever techniques to make the diagonal. If, for example, to perform only a permutation of rows and / or columns, then the sum of numbers in rows and columns at the same time remain.

Use methods $C1$, $C2$, $C3$ if you want that only diagonals are make without breaking rows and columns magic.
All the other methods make diagonals magic braking the rows/columns magic state, then they go to make rows and columns magic without breking diagonal state. Maybe with this kind of square the methods are not able to make the square magic again.

Only if you get:
Код:
YUPPY!!!!!!!!!!!!!!!!!

that the square where built.

Цитата:
We ought to make a program so that it tested several polumagicheskih squares (for example, 200 or 500), all of which will be in the original file

What is the format of the file? I need to know for modifing the program

 Профиль  
                  
 
 Re: Магические квадраты
Сообщение18.10.2009, 11:17 
Заблокирован
Аватара пользователя


22/03/08

7154
Саратов
Да, я поняла, какое сообщение выдаётся, если магический квадрат получен :) Это у меня было в тесте. Если магический квадрат не получен, то выдаётся сообщение: "Извините! Квадрат не магический".
Я пробовала разные методы.
Вы спрашиваете формат исходного файла. Я сгенерирую несколько полумагических квадратов и пришлю вам этот файл, его формат .txt, в нём будут записаны подряд все полумагические квадраты.
Ждите этот файл.

 Профиль  
                  
 
 Re: Магические квадраты
Сообщение18.10.2009, 13:58 
Заслуженный участник
Аватара пользователя


23/07/05
17973
Москва
Nataly-Mak в сообщении #252660 писал(а):
И ещё один нюанс: виновата - не предусмотрела сразу. Я проверила сейчас 50 полумагических квадратов 10-го порядка. Но каждый такой квадрат мне надо заново вводить в исходный файл и снова набирать командную строку.


Напишите bat-файл. Что-нибудь типа

Код:
@Echo Off
:Loop
If -%1 == - GoTo End
For %%a In (%1) Do pageprn.exe %%a
Shift
GoTo Loop
:End


Ваши данные записываете в файлы aaa1.txt, aaa2.txt, ..., aaaN.txt, а в бат-файле (назовём его, например, start.bat) пишете

Код:
@Echo Off
For %%a In (%1) Do pageprn.exe %%a %2 %3 ...


где вместо pageprn.exe пишете, естественно, имя Вашей программы.

Вызываете файл командой

Код:
start.bat aaa*.txt ключи программы


В другой раз вместо букв "aaa" в именах файлов пишете что-нибудь ещё и соответственно изменяете строку вызова файла.

 Профиль  
                  
 
 Re: Магические квадраты
Сообщение18.10.2009, 20:18 


17/10/09
26
Блин, может потому что у меня Виндовс 7 стоит, программы эти не запускаются, окошко выскакивает на доли секунд и исчезает, даже одного слова неуспеваю прочитать.

 Профиль  
                  
 
 Re: Магические квадраты
Сообщение18.10.2009, 21:02 
Аватара пользователя


26/09/09
95
You have to run the programs from a DOS console.

Check instruction here:
http://dxdy.ru/post248953.html#p248953

 Профиль  
                  
 
 Re: Магические квадраты
Сообщение18.10.2009, 21:36 


17/10/09
26
Спасибо огромное ice00, завтра попробую с новыми силами.
Кстати, почему бы вам не попробовать объединить это все в одну программу, или нет такой возможности из-за использования консоли?

 Профиль  
                  
 
 Re: Магические квадраты
Сообщение18.10.2009, 22:14 
Аватара пользователя


26/09/09
95
The problem is that the methos od solution need lot of code like many $if$ statement for each comparison and else, it use $bitfiled$ variables (one bit for one order). I have think of how all can be coded into one program, but not found yet an elegant mode.
For now, the code is indipendent from order (and odd/even order make different operations), and only an header is needed for generating a given order (it is made by many $macros$).
Console usage is for simple develoup (else, if I use windows like enviroments I will code it for Linux, so maybe no way to have it ported into Windows in short time)

 Профиль  
                  
 
 Re: Магические квадраты
Сообщение18.10.2009, 22:47 


17/10/09
26
Все ясно, в общем трудности как я понял немалые.
Ну может быть когда-нибудь мы сможем воспользоваться относительно универсальной такой программой, а пока мы рады и такому варианту.
Жаль, что мало программистов в среде изучения квадратов. Иначе нам бы только оставалось искать квадраты запредельных порядков)))

 Профиль  
                  
 
 Re: Магические квадраты
Сообщение19.10.2009, 06:27 
Заблокирован
Аватара пользователя


22/03/08

7154
Саратов
Someone
Благодарю за желание помочь; к сожалению, я ничего не понимаю в данной среде программирования. Мне ice00 прислал исполняемые программы, для которых здесь приведена инструкция в хорошем переводе maxal'а. Вот этим я и пользуюсь.
Вчера сгенерировала 200 полумагических квадратов и отправила их сегодня утром ice00. Жду результатов проверки этих квадратов. Математическая интуиция говорит, что магический квадрат не будет получен. Тут возможна такая причина: решений для данного массива очень мало, если они вообще существуют. И поэтому вероятность найти это решение из триллионов возможных комбинаций очень мала.
Приведу для всех данные для построения этого "трудного" квадрата: массив смитов: 4, ..., 2484, но заменить число 2475 на число 2583. Магическая константа равна 12202. Вот пример полумагического квадрата:
Код:
4  22  378  454  1255  1507  1935  2067  2218  2362
438  645  985  1626  706  535  2434  1776  2409  648
852  1633  121  1903  166  1642  576  1908  1449  1952
382  517  1894  825  526  1376  1086  1842  2173  1581
2461  634  654  2155  1678  588  636  861  663  1872
627  1921  2182  562  2484  391  274  1111  895  1755
2265  1962  958  2373  762  1165  2286  58  27  346
728  1966  2038  1736  922  1858  778  690  1284  202
2079  2583  2326  483  1822  913  1282  94  355  265
2366  319  666  85  1881  2227  915  1795  729  1219

Как я уже говорила, полумагических квадратов получается море. 200 таких квадратов я могу сгенерировать за полчаса (при том, что моя программа очень медленно выполняется). Но ни один полумагический квадрат не хочет превращаться в магический! Может быть, кто-нибудь ещё попробует? :cry:
Ау, программисты!
Далее, приведу данные для второго кандидата 10-го порядка в наименьший квадрат из смитов. Если предыдущий квадрат не существует или мы не можем его найти, тогда надо пробовать второй вариант. Массив чисел тот же: 4, ..., 2484, но заменить числа 2461 и 2484 на числа 2515 и 2578. Магическая константа равна 12206. Построение такого квадрата по программе ice00 уже попробовала, не составляется. По своей программе ещё не пробовала.

 Профиль  
                  
 
 Re: Магические квадраты
Сообщение19.10.2009, 09:18 


17/10/09
26
Я только что пробовал для квадрата 6-го порядка, массив 346...958, ни одним способом программа не построила магического квадрата.
Очень жаль, значит массив скорее всего должен быть не последовательным.
Напишите программку, которая будет подбирать пары чисел, дающие одинаковые заданные суммы из также заданного массива. Может так мы сможем составить для четных вариантов определенный массив?

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 2871 ]  На страницу Пред.  1 ... 61, 62, 63, 64, 65, 66, 67 ... 192  След.

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group