Message boards :
Cafe :
К штурму 19-ки
Message board moderation
Previous · 1 . . . 11 · 12 · 13 · 14 · 15 · 16 · 17 . . . 55 · Next
Author | Message |
---|---|
Send message Joined: 6 Apr 17 Posts: 14373 Credit: 0 RAC: 0 |
Я не применяла корректировки. Взяла первоначальную версию программы. Корректировки могут быть сделаны неправильно, поэтому я их избегаю и без необходимости не делаю. А там написано, что корректировки касаются вывода процесса обработки, что мне совсем не нужно. У меня шлёпается полный вектор а. Мне даже и вектор р выводить не нужно. Это только засоряет экран, а мне надо видеть решения, если они появятся. |
Send message Joined: 11 Jul 17 Posts: 174 Credit: 4,964,801 RAC: 1 |
Странно. Я не вижу текста про "обработки" в моем посте с корректировками. А на счет засорения - абсолютно согласен, мне это тоже мешало (экран маленький, даже р не помещается), поэтому и укоротил. Но это все в принципе не важно. |
Send message Joined: 6 Apr 17 Posts: 14373 Credit: 0 RAC: 0 |
А это что??? Если часть кода в файле pattern-1.gp : https://boinc.progger.info/odlk/forum_thread.php?id=237&postid=11137 Да, слова "обработки" здесь нет :)) Но речь идёт про вывод в процессе обработки. Не так ли? |
Send message Joined: 6 Apr 17 Posts: 14373 Credit: 0 RAC: 0 |
Сделала вручную программу обработки всех 655 паттернов с диаметром 396. Очень популярный диаметр, судя по полученным на данный момент результатам. У меня пока обрабатываются всего 10 паттернов с этим диаметром. Жду, когда на Ахиллесе-3 освободится один поток, тогда запущу эту программу. |
Send message Joined: 11 Jul 17 Posts: 174 Credit: 4,964,801 RAC: 1 |
А... Я понял, все дело в терминах. Есть просто информационное сообщение. Оно выводится еще до того, как код основной задачи, что-то начал искать, считать, например: print1("String N:",r,"\ta[1-2]=",a[1],",",a[2],", ...");Или его старый вариант: print(a); И от него ничего не зависит. Можно закоментировать, но на работу основной задачи это никак не повлияет. А есть код, например: nextprime((bpt+p[13])+1) == (bpt+p[14]), print1(bpt+p[6],", "); print1(bpt+p[7],", "); print1(bpt+p[8],", "); print1(bpt+p[9],", ");print1(bpt+p[10],", ");print1(bpt+p[11],", ");print1(bpt+p[12],", "); print1(bpt+p[13],", "); print1(bpt+p[14],", ");print(); for prime(k=bpt, bpt+p[19], print(k,", ");); print(); print1(bpt,", "); print1(bpt+p[2],", "); print1(bpt+p[3],", "); print1(bpt+p[4],", ");print1(bpt+p[5],", ");print1(bpt+p[6],", ");print1(bpt+p[7],", "); print1(bpt+p[8],", "); print1(bpt+p[9],", "); print1(bpt+p[10],", ");print1(bpt+p[11],", ");print1(bpt+p[12],", ");print1(bpt+p[13],", ");print1(bpt+p[14],", "); print1(bpt+p[15],", "); print1(bpt+p[16],", ");print1(bpt+p[17],", ");print1(bpt+p[18],", ");print1(bpt+p[19],", ");print(); Который нам выводит "что-то" найденное, т.е. именно результат обработки (основной работы программы по поиску "чего-то там"). Поэтому эта не точность сбила меня с толку "о какой обработке идет речь, если я ей вообще не занимался"... Только и всего. Подождем, что нароет "Ахиллес-3". |
Send message Joined: 6 Apr 17 Posts: 14373 Credit: 0 RAC: 0 |
Ещё одна центральная 9-ка найдена для паттерна с минимальным диаметром 252 (05:57) gp > \r gris9_2.txt logfile = "res_gris9_2.txt" 32686978444878660412249, 32686978444878660412267, 32686978444878660412273, 32686978444878660412297, 32686978444878660412303, 32686978444878660412309, 32686978444878660412333, 32686978444878660412339, 32686978444878660412357, 32686978444878660412177, 32686978444878660412187, 32686978444878660412247, 32686978444878660412249, 32686978444878660412267, 32686978444878660412273, 32686978444878660412297, 32686978444878660412303, 32686978444878660412309, 32686978444878660412333, 32686978444878660412339, 32686978444878660412357, 32686978444878660412409, 32686978444878660412177, 32686978444878660412183, 32686978444878660412189, 32686978444878660412207, 32686978444878660412219, 32686978444878660412249, 32686978444878660412267, 32686978444878660412273, 32686978444878660412297, 32686978444878660412303, 32686978444878660412309, 32686978444878660412333, 32686978444878660412339, 32686978444878660412357, 32686978444878660412387, 32686978444878660412399, 32686978444878660412417, 32686978444878660412423, 32686978444878660412429, 9-ка не продолжается даже до 11-ки ни в какую сторону. 13 вписанных последовательных простых чисел. Интересная статистика! За пределы этого количества (13) почти не выходим. А должно-то быть 19 вписанных последовательных простых чисел - для искомой 19-ки, и кроме того, все они должны соответствовать паттерну. |
Send message Joined: 6 Apr 17 Posts: 14373 Credit: 0 RAC: 0 |
Цитата Боюсь, что черепашка не справится до отбоя с тестированием. Да, не справится. Вряд ли обработалась даже половина всех паттернов. Скоро прерву программу. Ну, ошибок не выдано, уже хорошо. Прервала *** ispseudoprime: user interrupt after 15h, 29min, 29,655 ms Программа работала почти 15,5 часов. Обработано 314 паттернов из 3401, то есть менее 10%. Очень медленно! Примеры тестирования на черепашке (06:08) gp > \r d420_9ki_261.txt logfile = "rez_d420_9ki.txt" *** Warning: new stack size = 536870912 (512.000 Mbytes). range of search 500228000001 (p=4852056529329699690 ) 500228100000 (p=4852057499289000000 ) time = 11h, 36min, 47,488 ms. https://boinc.progger.info/odlk/forum_thread.php?id=237&postid=11107 (12:44) gp > \r d432_9ki.txt logfile = "rez_d432_9ki.txt" range of search 500223000001 (p=4852008030879699690 ) 500223300000 (p=4852010940777000000 ) time = 4h, 49min, 244 ms. https://boinc.progger.info/odlk/forum_thread.php?id=237&postid=11108 Здесь тестировались программы, в которых содержатся все данные для обработки. В первом примере интервал такой же, как в тестировании программы, сделанной методом Demis. Паттернов немного поменьше - 261. Программа Demis обработала 314 паттернов. Во втором примере интервал в три раза больше (300000), а паттернов в 5 раз меньше (62). Программа в этом случае работала всего 4h, 49min, 244 ms. Пока у меня впечатление, что программы, содержащие в себе все данные для обработки, работают быстрее. Надо выполнить точное тестирование времени для одних и тех же данных, чтобы увидеть разницу, так ли она велика и можно ли ею пренебречь. |
Send message Joined: 6 Apr 17 Posts: 14373 Credit: 0 RAC: 0 |
На Ахиллесе-3 поехала сделанная вручную программа для паттернов с диаметром 396. Для обработки всех 655 паттернов! Интервал задала 3 миллиона. Жду результатов. До этого у меня программа обрабатывала только 10 паттернов с этим диаметром. А решения находились. Теперь надо заняться паттернами с диаметром 408. Эту программу тоже сделала вручную всего на 10 паттернов. Для этого диаметра теоретических паттернов 621. Надо их задействовать все. Могу сделать это вручную, не сильно много паттернов, даже меньше, чем для диаметра 396. |
Send message Joined: 6 Apr 17 Posts: 14373 Credit: 0 RAC: 0 |
Недотестированную на черепашке программу для паттернов с диаметром 444, сделанную методом Demis, запущу на Ахиллесе-3, когда там появится свободный поток. При этом удалю из входного файла обработанные 314 паттернов, чтобы они не считались второй раз. Запустила. Ахиллес-3 трудится. Ещё много паттернов надо обработать. |
Send message Joined: 6 Apr 17 Posts: 14373 Credit: 0 RAC: 0 |
Программа с 256 формулами нашла несколько вписанных 19-ок. 9 «дырок» {4854501262197519707, 4854501262197519719, 4854501262197519731, 4854501262197519749, 4854501262197519791, 4854501262197519797, 4854501262197519827, 4854501262197519857, 4854501262197519869, 4854501262197519899, 4854501262197519929, 4854501262197519941, 4854501262197519971, 4854501262197520001, 4854501262197520007, 4854501262197520049, 4854501262197520067, 4854501262197520079, 4854501262197520091} 4854501262197519707, 4854501262197519719, 4854501262197519761, 4854501262197519769, 4854501262197519791, 4854501262197519817, 4854501262197519851, 4854501262197519857, 4854501262197519869, 4854501262197519899, 4854501262197519929, 4854501262197519941, 4854501262197519943, 4854501262197519983, 4854501262197519991, 4854501262197520027, 4854501262197520033, 4854501262197520079, 4854501262197520091, Паттерн с диаметром 384. 7 «дырок» {4854514866977196947, 4854514866977196959, 4854514866977196983, 4854514866977196989, 4854514866977197049, 4854514866977197067, 4854514866977197073, 4854514866977197109, 4854514866977197127, 4854514866977197133, 4854514866977197139, 4854514866977197157, 4854514866977197193, 4854514866977197199, 4854514866977197217, 4854514866977197277, 4854514866977197283, 4854514866977197307, 4854514866977197319} 4854514866977196947, 4854514866977196959, 4854514866977196983, 4854514866977196989, 4854514866977197001, 4854514866977197061, 4854514866977197067, 4854514866977197109, 4854514866977197127, 4854514866977197133, 4854514866977197139, 4854514866977197157, 4854514866977197183, 4854514866977197207, 4854514866977197223, 4854514866977197249, 4854514866977197283, 4854514866977197307, 4854514866977197319, Паттерн с диаметром 372. 9 «дырок» {4854522741849211957, 4854522741849211969, 4854522741849211993, 4854522741849211999, 4854522741849212017, 4854522741849212053, 4854522741849212059, 4854522741849212119, 4854522741849212137, 4854522741849212143, 4854522741849212149, 4854522741849212167, 4854522741849212227, 4854522741849212233, 4854522741849212269, 4854522741849212287, 4854522741849212293, 4854522741849212317, 4854522741849212329} 4854522741849211957, 4854522741849211969, 4854522741849211993, 4854522741849212027, 4854522741849212063, 4854522741849212093, 4854522741849212101, 4854522741849212119, 4854522741849212137, 4854522741849212143, 4854522741849212149, 4854522741849212167, 4854522741849212183, 4854522741849212191, 4854522741849212203, 4854522741849212231, 4854522741849212281, 4854522741849212317, 4854522741849212329, Паттерн с диаметром 372. 9 «дырок» {4854522741849211957, 4854522741849211969, 4854522741849211993, 4854522741849211999, 4854522741849212017, 4854522741849212053, 4854522741849212083, 4854522741849212119, 4854522741849212137, 4854522741849212143, 4854522741849212149, 4854522741849212167, 4854522741849212203, 4854522741849212233, 4854522741849212269, 4854522741849212287, 4854522741849212293, 4854522741849212317, 4854522741849212329} 4854522741849211957, 4854522741849211969, 4854522741849211993, 4854522741849212027, 4854522741849212063, 4854522741849212093, 4854522741849212101, 4854522741849212119, 4854522741849212137, 4854522741849212143, 4854522741849212149, 4854522741849212167, 4854522741849212183, 4854522741849212191, 4854522741849212203, 4854522741849212231, 4854522741849212281, 4854522741849212317, 4854522741849212329, Паттерн с диаметром 372. 9 «дырок» {4854522741849211957, 4854522741849211969, 4854522741849211993, 4854522741849212017, 4854522741849212053, 4854522741849212059, 4854522741849212083, 4854522741849212119, 4854522741849212137, 4854522741849212143, 4854522741849212149, 4854522741849212167, 4854522741849212203, 4854522741849212227, 4854522741849212233, 4854522741849212269, 4854522741849212293, 4854522741849212317, 4854522741849212329} 4854522741849211957, 4854522741849211969, 4854522741849211993, 4854522741849212027, 4854522741849212063, 4854522741849212093, 4854522741849212101, 4854522741849212119, 4854522741849212137, 4854522741849212143, 4854522741849212149, 4854522741849212167, 4854522741849212183, 4854522741849212191, 4854522741849212203, 4854522741849212231, 4854522741849212281, 4854522741849212317, 4854522741849212329, Паттерн с диаметром 372. 10 «дырок» {4854531898774442293, 4854531898774442299, 4854531898774442329, 4854531898774442371, 4854531898774442383, 4854531898774442413, 4854531898774442419, 4854531898774442431, 4854531898774442449, 4854531898774442461, 4854531898774442473, 4854531898774442491, 4854531898774442503, 4854531898774442509, 4854531898774442539, 4854531898774442551, 4854531898774442593, 4854531898774442623, 4854531898774442629} 4854531898774442293, 4854531898774442299, 4854531898774442303, 4854531898774442329, 4854531898774442359, 4854531898774442387, 4854531898774442399, 4854531898774442431, 4854531898774442449, 4854531898774442461, 4854531898774442473, 4854531898774442491, 4854531898774442531, 4854531898774442539, 4854531898774442557, 4854531898774442603, 4854531898774442611, 4854531898774442623, 4854531898774442629, Паттерн с диаметром 336. Эту программу уже не перезапускаю. Постепенно буду останавливать поиск вписанных 19-ок и переходить к поиску центральных 9-ок. Мне кажется. что алгоритм поиска центральных 9-ок более эффективен. |
Send message Joined: 6 Apr 17 Posts: 14373 Credit: 0 RAC: 0 |
Две вписанные 19-ки нашла программа с 1024 формулами. 9 «дырок» {4851627620658106621, 4851627620658106627, 4851627620658106657, 4851627620658106681, 4851627620658106711, 4851627620658106723, 4851627620658106747, 4851627620658106753, 4851627620658106777, 4851627620658106807, 4851627620658106837, 4851627620658106861, 4851627620658106867, 4851627620658106891, 4851627620658106903, 4851627620658106933, 4851627620658106957, 4851627620658106987, 4851627620658106993} 4851627620658106621, 4851627620658106627, 4851627620658106663, 4851627620658106679, 4851627620658106711, 4851627620658106721, 4851627620658106733, 4851627620658106753, 4851627620658106777, 4851627620658106807, 4851627620658106837, 4851627620658106861, 4851627620658106879, 4851627620658106889, 4851627620658106891, 4851627620658106903, 4851627620658106927, 4851627620658106987, 4851627620658106993, Паттерн с диаметром 372. 10 «дырок» {4851636221005972319, 4851636221005972331, 4851636221005972337, 4851636221005972367, 4851636221005972421, 4851636221005972427, 4851636221005972451, 4851636221005972469, 4851636221005972487, 4851636221005972499, 4851636221005972511, 4851636221005972529, 4851636221005972547, 4851636221005972571, 4851636221005972577, 4851636221005972631, 4851636221005972661, 4851636221005972667, 4851636221005972679} 4851636221005972319, 4851636221005972331, 4851636221005972339, 4851636221005972381, 4851636221005972393, 4851636221005972457, 4851636221005972459, 4851636221005972469, 4851636221005972487, 4851636221005972499, 4851636221005972511, 4851636221005972529, 4851636221005972577, 4851636221005972579, 4851636221005972621, 4851636221005972649, 4851636221005972663, 4851636221005972667, 4851636221005972679, Паттерн с диаметром 360. Эту программу тоже остановила. |
Send message Joined: 6 Apr 17 Posts: 14373 Credit: 0 RAC: 0 |
Найдена ещё одна центральная 9-ка для паттерна с минимальным диаметром 252 32686978573594872602683, 32686978573594872602701, 32686978573594872602707, 32686978573594872602731, 32686978573594872602737, 32686978573594872602743, 32686978573594872602767, 32686978573594872602773, 32686978573594872602791, 32686978573594872602611, 32686978573594872602657, 32686978573594872602683, 32686978573594872602701, 32686978573594872602707, 32686978573594872602731, 32686978573594872602737, 32686978573594872602743, 32686978573594872602767, 32686978573594872602773, 32686978573594872602791, 32686978573594872602611, 32686978573594872602617, 32686978573594872602623, 32686978573594872602641, 32686978573594872602653, 32686978573594872602683, 32686978573594872602701, 32686978573594872602707, 32686978573594872602731, 32686978573594872602737, 32686978573594872602743, 32686978573594872602767, 32686978573594872602773, 32686978573594872602791, 32686978573594872602821, 32686978573594872602833, 32686978573594872602851, 32686978573594872602857, 32686978573594872602863, Всего 11 вписанных последовательных простых чисел, даже меньше среднестатистического количества (13). Конечно, 9-ка не продолжается даже до 11-ки ни в какую сторону. |
Send message Joined: 6 Apr 17 Posts: 14373 Credit: 0 RAC: 0 |
Придумала, как вставлять в текстовый файл постоянные блоки! Прекрасно всё вставляется в Ворде. Только размер вставки в Ворде не позволяет вставить сразу весь текстовый фрагмент. Пришлось разделить его на 7 частей. Вот эти части первая вставка for( i=i1,i2, bp=i*period; for( n=1,lena, bpt=bp+a[n]; if( ispseudoprime (bpt) && ispseudoprime (bpt+p[6]) && ispseudoprime (bpt+p[7] ) && ispseudoprime (bpt+p[8]) && ispseudoprime (bpt+p[9]) && ispseudoprime (bpt+p[10]) && ^p вторая вставка ispseudoprime (bpt+p[11]) && ispseudoprime (bpt+p[12]) && ispseudoprime (bpt+p[13]) && ispseudoprime (bpt+p[14]) && nextprime((bpt+p[6])+1) == (bpt+p[7]) && nextprime((bpt+p[7])+1) == (bpt+p[8]) && nextprime((bpt+p[8])+1) == (bpt+p[9]) && ^p третья вставка nextprime((bpt+p[9])+1) == (bpt+p[10]) && nextprime((bpt+p[10])+1) == (bpt+p[11]) && nextprime((bpt+p[11])+1) == (bpt+p[12]) && nextprime((bpt+p[12])+1) == (bpt+p[13]) && nextprime((bpt+p[13])+1) == (bpt+p[14]) , print1(bpt+p[6],", ");^p четвёртая вставка print1(bpt+p[7],", ");print1(bpt+p[8],", "); print1(bpt+p[9],", ");print1(bpt+p[10],", ");print1(bpt+p[11],", ");print1(bpt+p[12],", "); print1(bpt+p[13],", ");print1(bpt+p[14],", ");print(); ^p пятая вставка forprime(k=bpt, bpt+p[19], print(k,", "););print(); print1(bpt,", ");print1(bpt+p[2],", ");print1(bpt+p[3],", ");print1(bpt+p[4],", ");print1(bpt+p[5],", ");print1(bpt+p[6],", ");print1(bpt+p[7],", "); print1(bpt+p[8],", ");^p шестая вставка print1(bpt+p[9],", ");print1(bpt+p[10],", ");print1(bpt+p[11],", ");print1(bpt+p[12],", ");print1(bpt+p[13],", ");print1(bpt+p[14],", "); print1(bpt+p[15],", ");print1(bpt+p[16],", ");print1(bpt+p[17],", ");print1(bpt+p[18],", ");^p седьмая вставка print1(bpt+p[19],", ");print(); ); ); );^p Надо ли говорить, что Ворд вставляет сразу во все места и делает это очень быстро. Уже опробовала это на формировании текста программы для всех паттернов (их 621) с диаметром 408. Программа тестируется на Ахиллесе-3 ? \r d408_9ki_all.txt logfile = "rez_d408_9ki_all.txt" *** Warning: new stack size = 536870912 (512.000 Mbytes). range of search 500290000001 (p=4852657910109699690 ) 500290100000 (p=4852658880069000000 ) Интервал задала маленький - 100000. 621 паттерн в программе! И сделала программу очень быстро. Понятно, что в этом способе формирования программы все данные находятся в программе. Чем плохой способ? Главное - совсем простой! Кстати, можно наверняка и утилиту написать для этого способа. Машины - они всё могут, это мы не всегда можем им сказать, что делать нужно :) |
Send message Joined: 6 Apr 17 Posts: 14373 Credit: 0 RAC: 0 |
Покажу, как выглядит сформированная таким методом программа для паттернов с диаметром 264, паттернов всего два \l rez_d264_9ki.txt; {period = 9699690; pl=19; dm=264; N=period; \\N=#19 print("range of search"); i1=500226000001; print(i1," (p=", i1*9699690," )"); i2=500226100000; print(i2," (p=", i2*9699690," )"); p=[0, 12, 24, 30, 42, 54, 84, 90, 114, 132, 150, 174, 180, 210, 222, 234, 240, 252, 264]; a=[19739,30827,103757,179339,234317,290009,307247,322339,373169,446099,473269,501077,528247,576659,601177,643439,649589,660677,676759,716369,771347,781577,846929,870589,919859,943519,954607,985067,1003019,1030189,1103119,1113689,1140859,1158097,1168327,1213789,1273289,1278997,1296949,1338497,1411427,1438597,1500439,1567219,1632427,1705357,1770709,1780939,1821539,1835917,1894469,1908847,1959677,2119277,2229947,2247899,2262277,2313107,2386037,2413207,2451389,2461619,2516597,2572289,2583377,2589527,2616697,2656307,2731889,2745319,2755549,2786867,2810527,2859797,2883457,2925719,2942957,2959039,2970127,2998649,3025819,3043057,3053627,3080797,3129209,3153727,3202139,3213227,3229309,3236887,3312469,3385399,3423139,3440377,3496069,3507157,3555569,3582739,3655669,3706499,3710647,3720877,3761477,3834407,3849499,3909989,4052989,4103819,4176749,4187837,4203919,4263419,4336349,4374089,4391327,4401557,4447019,4512227,4530179,4557349,4630279,4671827,4685257,4695487,4733669,4760839,4800449,4833769,4865657,4898977,4938587,4965757,5003939,5014169,5027599,5069147,5142077,5169247,5187199,5252407,5297869,5308099,5325337,5363077,5436007,5495507,5511589,5522677,5595607,5646437,5789437,5849927,5865019,5937949,5978549,5988779,5992927,6043757,6116687,6143857,6192269,6203357,6259049,6276287,6314027,6386957,6462539,6470117,6486199,6497287,6545699,6570217,6618629,6645799,6656369,6673607,6700777,6729299,6740387,6756469,6773707,6815969,6839629,6888899,6912559,6943877,6954107,6967537,7043119,7082729,7109899,7116049,7127137,7182829,7237807,7248037,7286219,7313389,7386319,7437149,7451527,7469479,7580149,7739749,7790579,7804957,7863509,7877887,7918487,7928717,7994069,8066999,8132207,8198987,8260829,8287999,8360929,8402477,8420429,8426137,8485637,8531099,8541329,8558567,8585737,8596307,8669237,8696407,8714359,8744819,8755907,8779567,8828837,8852497,8917849,8928079,8983057,9022667,9038749,9049837,9055987,9098249,9122767,9171179,9198349,9226157,9253327,9326257,9377087,9392179,9409417,9465109,9520087,9595669,9668599,9679687]; lena=#a; for( i=i1,i2, bp=i*period; for( n=1,lena, bpt=bp+a[n]; if( ispseudoprime (bpt) && ispseudoprime (bpt+p[6]) && ispseudoprime (bpt+p[7] ) && ispseudoprime (bpt+p[8]) && ispseudoprime (bpt+p[9]) && ispseudoprime (bpt+p[10]) && ispseudoprime (bpt+p[11]) && ispseudoprime (bpt+p[12]) && ispseudoprime (bpt+p[13]) && ispseudoprime (bpt+p[14]) && nextprime((bpt+p[6])+1) == (bpt+p[7]) && nextprime((bpt+p[7])+1) == (bpt+p[8]) && nextprime((bpt+p[8])+1) == (bpt+p[9]) && nextprime((bpt+p[9])+1) == (bpt+p[10]) && nextprime((bpt+p[10])+1) == (bpt+p[11]) && nextprime((bpt+p[11])+1) == (bpt+p[12]) && nextprime((bpt+p[12])+1) == (bpt+p[13]) && nextprime((bpt+p[13])+1) == (bpt+p[14]) , print1(bpt+p[6],", ");print1(bpt+p[7],", ");print1(bpt+p[8],", ");print1(bpt+p[9],", ");print1(bpt+p[10],", ");print1(bpt+p[11],", ");print1(bpt+p[12],", "); print1(bpt+p[13],", ");print1(bpt+p[14],", ");print(); forprime(k=bpt, bpt+p[19], print(k,", "););print(); print1(bpt,", ");print1(bpt+p[2],", ");print1(bpt+p[3],", ");print1(bpt+p[4],", ");print1(bpt+p[5],", ");print1(bpt+p[6],", ");print1(bpt+p[7],", "); print1(bpt+p[8],", "); print1(bpt+p[9],", ");print1(bpt+p[10],", ");print1(bpt+p[11],", ");print1(bpt+p[12],", ");print1(bpt+p[13],", ");print1(bpt+p[14],", "); print1(bpt+p[15],", ");print1(bpt+p[16],", ");print1(bpt+p[17],", ");print1(bpt+p[18],", "); print1(bpt+p[19],", ");print(); ); ); ); p=[0, 12, 24, 42, 54, 72, 84, 90, 114, 132, 150, 174, 180, 192, 210, 222, 240, 252, 264]; a=[1889,10937,72817,99949,113039,129797,156967,165157,178247,313057,331999,340189,353279,380449,397207,415159,499309,508357,583327,591517,610459,675667,823567,837647,850699,925669,939749,1102027,1116107,1179989,1264007,1291139,1348157,1356347,1366109,1431317,1450259,1458449,1542467,1606349,1626617,1633519,1690499,1761427,1774517,1782707,1801649,1809877,1863529,1866857,1876619,1884809,1911979,1928737,1941827,1968959,2039887,2052977,2103769,2116859,2144029,2152219,2271937,2280127,2293217,2320387,2355097,2374039,2382229,2395319,2422489,2439247,2550397,2614279,2662729,2790637,2865607,2879687,2892739,3054719,3103169,3119927,3222029,3231077,3306047,3333179,3390197,3398387,3546287,3565229,3573419,3573457,3600589,3613679,3630437,3648389,3675559,3732539,3741587,3803467,3816557,3824747,3843689,3851917,3908897,3915799,4026949,4043707,4056797,4083929,4083967,4092157,4111099,4145809,4158899,4186069,4194259,4313977,4322167,4335257,4362427,4426309,4537459,4554217,4602667,4656319,4704769,4832677,4866749,4994657,5043107,5096759,5145209,5161967,5273117,5336999,5364169,5377259,5385449,5505167,5513357,5540527,5553617,5588327,5607269,5615459,5615497,5642629,5655719,5672477,5783627,5790529,5847509,5855737,5874679,5882869,5895959,5957839,5966887,6023867,6051037,6068989,6085747,6098837,6125969,6126007,6134197,6153139,6301039,6309229,6366247,6393379,6468349,6477397,6579499,6596257,6644707,6806687,6819739,6833819,6908789,7036697,7085147,7149029,7260179,7276937,7304107,7317197,7325387,7344329,7379039,7406209,7419299,7427489,7547207,7555397,7582567,7595657,7646449,7659539,7730467,7757599,7770689,7787447,7814617,7822807,7832569,7835897,7889549,7897777,7916719,7924909,7937999,8008927,8065907,8072809,8093077,8156959,8240977,8249167,8268109,8333317,8343079,8351269,8408287,8435419,8519437,8583319,8597399,8759677,8773757,8848727,8861779,8875859,9023759,9088967,9107909,9116099,9191069,9200117,9284267,9302219,9318977,9346147,9359237,9367427,9386369,9521179,9534269,9542459,9569629,9586387,9599477,9626609,9688489,9697537]; lena=#a; for( i=i1,i2, bp=i*period; for( n=1,lena, bpt=bp+a[n]; if( ispseudoprime (bpt) && ispseudoprime (bpt+p[6]) && ispseudoprime (bpt+p[7] ) && ispseudoprime (bpt+p[8]) && ispseudoprime (bpt+p[9]) && ispseudoprime (bpt+p[10]) && ispseudoprime (bpt+p[11]) && ispseudoprime (bpt+p[12]) && ispseudoprime (bpt+p[13]) && ispseudoprime (bpt+p[14]) && nextprime((bpt+p[6])+1) == (bpt+p[7]) && nextprime((bpt+p[7])+1) == (bpt+p[8]) && nextprime((bpt+p[8])+1) == (bpt+p[9]) && nextprime((bpt+p[9])+1) == (bpt+p[10]) && nextprime((bpt+p[10])+1) == (bpt+p[11]) && nextprime((bpt+p[11])+1) == (bpt+p[12]) && nextprime((bpt+p[12])+1) == (bpt+p[13]) && nextprime((bpt+p[13])+1) == (bpt+p[14]) , print1(bpt+p[6],", ");print1(bpt+p[7],", ");print1(bpt+p[8],", ");print1(bpt+p[9],", ");print1(bpt+p[10],", ");print1(bpt+p[11],", ");print1(bpt+p[12],", "); print1(bpt+p[13],", ");print1(bpt+p[14],", ");print(); forprime(k=bpt, bpt+p[19], print(k,", "););print(); print1(bpt,", ");print1(bpt+p[2],", ");print1(bpt+p[3],", ");print1(bpt+p[4],", ");print1(bpt+p[5],", ");print1(bpt+p[6],", ");print1(bpt+p[7],", "); print1(bpt+p[8],", "); print1(bpt+p[9],", ");print1(bpt+p[10],", ");print1(bpt+p[11],", ");print1(bpt+p[12],", ");print1(bpt+p[13],", ");print1(bpt+p[14],", "); print1(bpt+p[15],", ");print1(bpt+p[16],", ");print1(bpt+p[17],", ");print1(bpt+p[18],", "); print1(bpt+p[19],", ");print(); ); ); ); } У меня сначала было опасение, будет ли работать программа, записанная в таком сжатом виде. Всё работает! |
Send message Joined: 6 Apr 17 Posts: 14373 Credit: 0 RAC: 0 |
А Ахиллес начал трудиться над формированием паттернов и формул для диаметра 456. |
Send message Joined: 6 Apr 17 Posts: 14373 Credit: 0 RAC: 0 |
Итак, я сформировала программы для диаметров 396 и 408, обрабатываются все паттерны. Для диаметра 396 паттернов 655, для диаметра 408 паттернов 621. Первая программа сформирована просто банальными ручными вставками постоянного блока. А вторая программа - с помощью вставок в Ворде. Разумеется, затрачиваемое время на формирование программы этими двумя способами - небо и земля. А если бы ещё утилиту написать, вообще всё выполнялось бы несколько секунд. Кстати, так и выполняется у форумчанина с форума MHP. Только у него другая утилита - она в Матлабе работает. На очереди формирование программы для диаметра 420; надо тоже задействовать все паттерны, здесь паттернов много - 4302. Завтра буду пробовать. Надеюсь, что Ворд справится со вставками и в этом случае. |
Send message Joined: 11 Jul 17 Posts: 174 Credit: 4,964,801 RAC: 1 |
Опасения правильные. Не смотря на то, что код работает, есть подводные камни у такого подхода. В чем они заключаются? Все переменные продублированы. Инициализации переменных в коде нет. Отсюда вытекает, что при некоторых условиях работы второго или иного последующего кода может возникнуть неприятность такого свойства: значение некоей переменной не присвоилось (в силу того, что его просто нет по результату вычисления), а проверка условия увидит предыдущее значение (т.к. оное не изменилось от предыдущего кода) и подставит его для расчета. Получится кашка. Т.е. что-то скорее всего посчитается, но достоверность - под большим вопросом... |
Send message Joined: 6 Apr 17 Posts: 14373 Credit: 0 RAC: 0 |
Опасения правильные. Demis вставляется тот же самый постоянный блок, который я вставляла ручками! Только теперь я вставляю его с помощью Ворда. Фрагмент программы (постоянный блок) один к одному тот же самый. Для диаметра 264 программа показана выше. Что в постоянном блоке не так? Если он точная копия того постоянного блока, который я раньше вставляла ручками!! Эту программу я проверила. Она работает. В данный момент ещё одна программа запущена, полученная таким же способом - для 621 паттерна с диаметром 408. При запуске ошибок не выдано. Вы вообще о чём? О какой "кашке"??? У меня уже давно работают программы, сформированные вручную (ещё без Ворда). Например, для диаметра 396. И найдено несколько решений уже для этого диаметра. И никаких ошибок. Кстати, для этого диаметра сделала вручную же (тоже ещё без Ворда) программу для всех 655 паттернов. Эта программа сейчас работает. Так что изменится, если я буду вставлять постоянный блок с помощью Ворда? |
Send message Joined: 6 Apr 17 Posts: 14373 Credit: 0 RAC: 0 |
Кстати, в вашем подходе вы используете тот же самый код! Только вы загружаете данные из входного файла, а я их не загружаю, они у меня все в программе записаны. Так значит, и в вашем подходе есть те же самые "подводные камни"? Короче, выбросить код на помойку! :)) Потому что он написан не так, как надо с точки зрения Demis. О правильности или неправильности кода вопрос никогда не стоял. Код писал gris и написал его правильно, вне всякого сомнения. Вопрос мой был только об одном: как вставлять этот код в исходный текстовый файл, содержащий переменные блоки, то есть исходные данные для обработки. И ответ на этот вопрос я не получила. Точнее, форумчанин с MHP это сделал, но его утилита мне недоступна, потому что она использует Матлаб. |
Send message Joined: 6 Apr 17 Posts: 14373 Credit: 0 RAC: 0 |
Demis написал Инициализации переменных в коде нет. Ещё раз показываю код for( i=i1,i2, bp=i*period; for( n=1,lena, bpt=bp+a[n]; if( ispseudoprime (bpt) && ispseudoprime (bpt+p[6]) && ispseudoprime (bpt+p[7] ) && ispseudoprime (bpt+p[8]) && ispseudoprime (bpt+p[9]) && ispseudoprime (bpt+p[10]) && ispseudoprime (bpt+p[11]) && ispseudoprime (bpt+p[12]) && ispseudoprime (bpt+p[13]) && ispseudoprime (bpt+p[14]) && nextprime((bpt+p[6])+1) == (bpt+p[7]) && nextprime((bpt+p[7])+1) == (bpt+p[8]) && nextprime((bpt+p[8])+1) == (bpt+p[9]) && nextprime((bpt+p[9])+1) == (bpt+p[10]) && nextprime((bpt+p[10])+1) == (bpt+p[11]) && nextprime((bpt+p[11])+1) == (bpt+p[12]) && nextprime((bpt+p[12])+1) == (bpt+p[13]) && nextprime((bpt+p[13])+1) == (bpt+p[14]) , print1(bpt+p[6],", ");print1(bpt+p[7],", ");print1(bpt+p[8],", ");print1(bpt+p[9],", ");print1(bpt+p[10],", ");print1(bpt+p[11],", ");print1(bpt+p[12],", "); print1(bpt+p[13],", ");print1(bpt+p[14],", ");print(); forprime(k=bpt, bpt+p[19], print(k,", "););print(); print1(bpt,", ");print1(bpt+p[2],", ");print1(bpt+p[3],", ");print1(bpt+p[4],", ");print1(bpt+p[5],", ");print1(bpt+p[6],", ");print1(bpt+p[7],", "); print1(bpt+p[8],", ");print1(bpt+p[9],", ");print1(bpt+p[10],", ");print1(bpt+p[11],", ");print1(bpt+p[12],", ");print1(bpt+p[13],", ");print1(bpt+p[14],", "); print1(bpt+p[15],", ");print1(bpt+p[16],", ");print1(bpt+p[17],", ");print1(bpt+p[18],", ");print1(bpt+p[19],", ");print(); ); ); ); Инициализации каких переменных в коде нет? Векторы p, a и длина lena заданы в предшествующих коду данных. Переменная period задана в самом начале программы, она одинакова (не изменяется) для всех выполнений кода. Переменные i1, i2 заданы тоже в начале программы. Они тоже не изменяются для всех выполнений кода. Так чего не хватает в коде? |
©2025 (C) Progger