
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Так в реальности какой размерности Вы будете использовать массив?
Если скажем в Вашем случае массив 2200X 8 X 2, то вероятность, что хотя бы две строки будут одинаковые примерно один шанс на 10 тысяч.
я просто задачи не понимаю. Этот массив необходимо сгенерировать один раз и скорость не имеет значения или скорость важна, т.к. он должен генерироваться постоянно?
Если Вам нужно сгенерировать массив только один раз и скорость не важна, то это элементарно - проверить на уникальность каждую строку можно простым перебором. Займет пару секунд.
Но если скорость важна, то придется чуть повозиться.
Но лично мне времени жаль, т.к. я осознаю слишком малую вероятность совпадения хотя бы одного совпадения. Это все равно что в лотерею выиграть.
массив будет размерностью от 4-10 (пусть 4-15)
массив нужен чтобы один раз его сгенерировать и потом считать повторения данной последовательности - массив в структуре, в структуре count
скорость Важна потом, а в памяти будет храниться эталонные строки - сгенерированный массив
:))) Если это Вам нужно для индикатора на МТ, то забудьте про эксель. Это для школьных лабораторных работ.
MQL5 Вам дает все необходимое. Для проверки уникальности там всего то нужно 4 строчки кода добавить ( правда время выполнения вырастет на порядки).
Если же Вы пытаете заниматься распознаванием образов и поисков патернов, то сразу скажу - не с той стороны зашли.
Впрочем мне пора уходить. Семья зовет ))) Удачи.
тут эксель пока чтобы оценить количество повторений, расчеты в нем не ведутся
да образы, но не паттерны - не важно, если есть повторения значит. можно искать вероятность....
индикатор уже готов, но там "по варварски" все сделал, тупо инициализирую массив при объявлении - копирую из экселя более четверти из 2000 строк - все работает, но увы не по программистки как то - не красиво ((((
массив будет размерностью от 4-10 (пусть 4-15)
массив нужен чтобы один раз его сгенерировать и потом считать повторения данной последовательности - массив в структуре, в структуре count
скорость Важна потом, а в памяти будет храниться эталонные строки - сгенерированный массив
тут эксель пока чтобы оценить количество повторений, расчеты в нем не ведутся
да образы, но не паттерны - не важно, если есть повторения значит. можно искать вероятность....
индикатор уже готов, но там "по варварски" все сделал, тупо инициализирую массив при объявлении - копирую из экселя более четверти из 2000 строк - все работает, но увы не по программистки как то - не красиво ((((
Добро пожаловать в сообщество MQL!! :))
да нет у меня проблем с mql и ООП, восстановил понемногу забытые знания, проблема пока с логикой - никак не придумаю как сделать массив похожий на то, что приатачил
ЗЫ: что Вы с этим экселем пристали? -могу в блокноте смотреть, в Printы не удобно выводить, то Sleep()забудешь поставить - половина Printoв мимо терминала пролетит... для моей протсой задачи совсем не хочется прикручивать к скрипту панели окон, вот и смотрю в экселе ибо вывод в файл прикрутил сразу :)
вот что то похожее на мою задачу, хотя моя задача проще
http://www.cyberforum.ru/cpp-beginners/thread276590.html
в кодобазе еще вчера видел
https://www.mql5.com/ru/code/1197
но чет не срослось с этим кодом вчера, наверное сегодня буду смотреть повнимательнее
да нет у меня проблем с mql и ООП, восстановил понемногу забытые знания, проблема пока с логикой - никак не придумаю как сделать массив похожий на то, что приатачил
ЗЫ: что Вы с этим экселем пристали? -могу в блокноте смотреть, в Printы не удобно выводить, то Sleep()забудешь поставить - половина Printoв мимо терминала пролетит... для моей протсой задачи совсем не хочется прикручивать к скрипту панели окон, вот и смотрю в экселе ибо вывод в файл прикрутил сразу :)
вот что то похожее на мою задачу, хотя моя задача проще
http://www.cyberforum.ru/cpp-beginners/thread276590.html
в кодобазе еще вчера видел
https://www.mql5.com/ru/code/1197
но чет не срослось с этим кодом вчера, наверное сегодня буду смотреть повнимательнее
Вы все же попробуйте исчерпывающе сформулировать задачу, если ищете помощи на стороне.
задача:
есть массив трехмерный массив, размерностью [MAXARR] [2] , сколько строк в данном массиве не знаю, предположительно (экспериментально) около 2000 строк (в теории это 8! = 40320)
строки формируются по принципу:
1.первый элемент строки всегда {1,1}
2. следующий столбик в строке будет комбинация цифр, цифры в этом элементе не могут быть больше № столбца и не равных 0 ( именно в столбце ), в столбце должны быть перебраны все комбинации цифр допустимых в этом столбце, цифры в элементе не повторяются. Т.е.
для столбца №2 макс.цифра это 2 и комбинации {1,2} и {2,1}
для столбца №3 макс. цифра это 3 и комбинации {1,2} , {1,3}, {2,1}, {2,3} и {3,1}, {3,2} - подозреваю, что это факториал № столбца ))))
и так формируем все столбцы до MAXARR
строки формируются с повторяющимися первыми столбцами и по мере наполнения последних столбцов - даже не знаю, но по другому не сумею сказать
пример - на стр.№ 1 этого топика
ЗЫ: появились сомнения насколько это задача на комбинаторику - может быть это задача на систему исчисления? т.е. вот "грызу" пример с MAXARR = 8, это восьмеричная система исчисления исключаем нули и ограничиваем элементы № столбца и в теории получится массив что ищу?
задача:
есть массив трехмерный массив, размерностью [MAXARR] [2] , сколько строк в данном массиве не знаю, предположительно (экспериментально) около 2000 строк (в теории это 8! = 40320)
строки формируются по принципу:
1.первый элемент строки всегда {1,1}
2. следующий столбик в строке будет комбинация цифр, цифры в этом элементе не могут быть больше № столбца и не равных 0 ( именно в столбце ), в столбце должны быть перебраны все комбинации цифр допустимых в этом столбце, цифры в элементе не повторяются. Т.е.
для столбца №2 макс.цифра это 2 и комбинации {1,2} и {2,1}
для столбца №3 макс. цифра это 3 и комбинации {1,2} , {1,3}, {2,1}, {2,3} и {3,1}, {3,2} - подозреваю, что это факториал № столбца ))))
и так формируем все столбцы до MAXARR
строки формируются с повторяющимися первыми столбцами и по мере наполнения последних столбцов - даже не знаю, но по другому не сумею сказать
пример - на стр.№ 1 этого топика
ЗЫ: появились сомнения насколько это задача на комбинаторику - может быть это задача на систему исчисления? т.е. вот "грызу" пример с MAXARR = 8, это восьмеричная система исчисления исключаем нули и ограничиваем элементы № столбца и в теории получится массив что ищу?
теперь задача имеет совершенно другую формулировку от первоначального варианта, но так же совершенно неясная:
- теперь не должно быть нулей - понятно
- Могут ли быть одинаковые значения? Например {2,2} для второго столбца
- Не понятно, массив есть, или его нужно сгенерировать? Если генерировать, то случайным образом, или не имеет значения и можно последовательным перебором?
Давайте все же сформулируйте задачу исходя не из странноватой логики массива, а из конкретной трейдерской задачи. На сколько я понял - на примере вершин зигзага.
У меня такое ощущение, что Вас ошибка в логике еще до этапа формирования этого массива и формирование данного массива вообще не требуется.
теперь задача имеет совершенно другую формулировку от первоначального варианта, но так же совершенно неясная:
- теперь не должно быть нулей - понятно
- Могут ли быть одинаковые значения? Например {2,2} для второго столбца
- Не понятно, массив есть, или его нужно сгенерировать? Если генерировать, то случайным образом, или не имеет значения и можно последовательным перебором?
Давайте все же сформулируйте задачу исходя не из странноватой логики массива, а из конкретной трейдерской задачи. На сколько я понял - на примере вершин зигзага.
У меня такое ощущение, что Вас ошибка в логике еще до этапа формирования этого массива и формирование данного массива вообще не требуется.
трейдерской задачи не получится - статистические исследования, я же писал, в целом все работает, но не нравится мне "уродский вид" инициализации в коде индикатора, вот так:
- да могут быть во втором столбце {2,2} и в третьем максимум {3,3}
- массив нужно сгенерировать в качестве инициализации массива Arr[][MAXARR] [2]
- логика массива такая как есть, ибо по этой логике ищу повторы мат.модели, раз количсество счетчиков повторов всегда одинаково, и зависит от размерности массива = значит логика одна и та же - т.е. логических ошибок нет
вот приатачил примеры того, что скрипт выдает при разной размерности, нулевые значения не нужны, если и будут, то не критично - все равно потом не попадут в счетчики повторений
трейдерской задачи не получится - статистические исследования, я же писал, в целом все работает, но не нравится мне "уродский вид" инициализации в коде индикатора, вот так:
да могут быть во втором столбце {2,2} и в третьем максимум {3,3}
вот приатачил примеры того, что скрипт выдает при разной размерности, нулевые значения не нужны, если и будут, то не критично - все равно потом не попадут в счетчики повторений
Так можно простым последовательным перебором формировать массив?
да, лишь бы было похоже на примеры, я никак не смог решить эту задачу, видимо сам себя запутал (((
да, лишь бы было похоже на примеры, я никак не смог решить эту задачу, видимо сам себя запутал (((