Страница 1 из 4
Индекс элемента в массиве. VB6
Добавлено: 03 сен 2008, 13:09
gershte
Нужно наиболее быстрым способом получать значение индекса элемента в массиве совпадающего со значением переменной.
Возможно ли это сделать не используя цикл. Цикл с ифом работают без проблем. Есть ли другой способ? Это необходимо для программы онлайн трейдинга. Поэтому нужно чтобы работало самым быстрым образом.
Заранее спасибо!
Re: Индекс элемента в массиве. VB6
Добавлено: 03 сен 2008, 13:13
Marmot
Re: Индекс элемента в массиве. VB6
Добавлено: 03 сен 2008, 13:26
Stanislav
gershte писал(а):Нужно наиболее быстрым способом получать значение индекса элемента в массиве совпадающего со значением переменной.
Возможно ли это сделать не используя цикл. Цикл с ифом работают без проблем. Есть ли другой способ? Это необходимо для программы онлайн трейдинга. Поэтому нужно чтобы работало самым быстрым образом.
Заранее спасибо!
Есть - на С/С++, а Мармот так не может, потому что у него Джава

вот он и злобствует

Re: Индекс элемента в массиве. VB6
Добавлено: 03 сен 2008, 13:26
gershte
Ты наверное удивишься... Но во первых не все программисты по специальности и не могут переходить с языка который немного знают с легкостью. Во вторых единственный язык который поддерживают практически все API брокерров это по прежнему ВБ6. Соответственно и саппорт в основном по ВБ6. Поэтому я не собираюсь рассказывать им какие они не продвинутые и отсталые. Мне результат нужен а не пальцы гнуть. Ты решение знаешь кстати?
Re: Индекс элемента в массиве. VB6
Добавлено: 03 сен 2008, 13:28
Marmot
Stanislav писал(а):gershte писал(а):Нужно наиболее быстрым способом получать значение индекса элемента в массиве совпадающего со значением переменной.
Возможно ли это сделать не используя цикл. Цикл с ифом работают без проблем. Есть ли другой способ? Это необходимо для программы онлайн трейдинга. Поэтому нужно чтобы работало самым быстрым образом.
Заранее спасибо!
Есть - на С/С++, а Мармот так не может, потому что у него Джава

вот он и злобствует

Ну-ка, ну-ка и как это можно сделать на С/С++ не используя цикл?
Re: Индекс элемента в массиве. VB6
Добавлено: 03 сен 2008, 13:31
gershte
Stanislav писал(а):gershte писал(а):Нужно наиболее быстрым способом получать значение индекса элемента в массиве совпадающего со значением переменной.
Возможно ли это сделать не используя цикл. Цикл с ифом работают без проблем. Есть ли другой способ? Это необходимо для программы онлайн трейдинга. Поэтому нужно чтобы работало самым быстрым образом.
Заранее спасибо!
Есть - на С/С++, а Мармот так не может, потому что у него Джава

вот он и злобствует

Мне надо на VB6. Я не могу все переписывать под С++ из-за этой проблемы. Пока и так все работает кстати. Хочется быстрее если возможно.
Ну а насчет Мармота и Джавы все очень кстати типично. Джависты при том что в основном обслуживают морды допотопных мэйнфреймов

, при этом постоянно и очень агрессивно почему-то выдают себя за самый передовой отряд человечества...

Да ладно.
P.S. Програма кстати для личного пользования а не коммерческая. Видимо это не было понятно из первого поста. Понятно что если бы коммерческая она бы не была на ВБ6. Кстати свои 10 процентов в месяц она делает и на ВБ6.
Re: Индекс элемента в массиве. VB6
Добавлено: 03 сен 2008, 13:33
AlexANB
gershte писал(а):Нужно наиболее быстрым способом получать значение индекса элемента в массиве совпадающего со значением переменной.
Думается, что тебе на самом деле нужен не поиск совпадения, а максимум или минимум, так?
Я это делаю квик-сортом (естественно, процедуру написал сам). Получается быстрее, чем тупой перебор массива в цикле.
Re: Индекс элемента в массиве. VB6
Добавлено: 03 сен 2008, 13:34
Stanislav
На самом деле решение с if - совсем неплохое, только его VB убивает своей интерпретацией. Можно убыстрить, если использовать арифметику указателей, но таковой я не помню в VB

Или сделать вставку на ассемблере, не знаю - можно ли это на VB.
Re: Индекс элемента в массиве. VB6
Добавлено: 03 сен 2008, 13:36
Stanislav
gershte писал(а):Stanislav писал(а):gershte писал(а):Нужно наиболее быстрым способом получать значение индекса элемента в массиве совпадающего со значением переменной.
Возможно ли это сделать не используя цикл. Цикл с ифом работают без проблем. Есть ли другой способ? Это необходимо для программы онлайн трейдинга. Поэтому нужно чтобы работало самым быстрым образом.
Заранее спасибо!
Есть - на С/С++, а Мармот так не может, потому что у него Джава

вот он и злобствует

Мне надо на VB6. Я не могу все переписывать под С++ из-за этой проблемы. Пока и так все работает кстати. Хочется быстрее если возможно.
Ну а насчет Мармота и Джавы все очень кстати типично. Джависты при том что в основном обслуживают морды допотопных мэйнфреймов

, при этом постоянно и очень агрессивно почему-то выдают себя за самый передовой отряд человечества...

Да ладно.
Ну так оно и есть - обслуживание допотопных морд происходит самыми передовыми методами!
Re: Индекс элемента в массиве. VB6
Добавлено: 03 сен 2008, 13:38
gershte
AlexANB писал(а):gershte писал(а):Нужно наиболее быстрым способом получать значение индекса элемента в массиве совпадающего со значением переменной.
Думается, что тебе на самом деле нужен не поиск совпадения, а максимум или минимум, так?
Я это делаю квик-сортом (естественно, процедуру написал сам). Получается быстрее, чем тупой перебор массива в цикле.
Нет. С квик сортом то как раз все понятно - двоичные деревья со всплыванием. А мне нужно именно позицию. Для хранения текущих данных по разным инструментам.
Re: Индекс элемента в массиве. VB6
Добавлено: 03 сен 2008, 13:40
Stanislav
Marmot писал(а):Stanislav писал(а):gershte писал(а):Нужно наиболее быстрым способом получать значение индекса элемента в массиве совпадающего со значением переменной.
Возможно ли это сделать не используя цикл. Цикл с ифом работают без проблем. Есть ли другой способ? Это необходимо для программы онлайн трейдинга. Поэтому нужно чтобы работало самым быстрым образом.
Заранее спасибо!
Есть - на С/С++, а Мармот так не может, потому что у него Джава

вот он и злобствует

Ну-ка, ну-ка и как это можно сделать на С/С++ не используя цикл?
Совершенно понятно, что заказчик неправильно, как всегда, ставит задачу. Я имел ввиду убыстрение работы, а не отказ от цикла и сравнения (хоть и неявного)

Re: Индекс элемента в массиве. VB6
Добавлено: 03 сен 2008, 13:40
gershte
Stanislav писал(а):На самом деле решение с if - совсем неплохое, только его VB убивает своей интерпретацией. Можно убыстрить, если использовать арифметику указателей, но таковой я не помню в VB

Или сделать вставку на ассемблере, не знаю - можно ли это на VB.
На нете это будет значительно быстрее? В принципе оттранслировать все в VB.NET не будет очень большой проблемой.
Re: Индекс элемента в массиве. VB6
Добавлено: 03 сен 2008, 13:41
Marmot
gershte писал(а):
Ну а насчет Мармота и Джавы все очень кстати типично. Джависты при том что в основном обслуживают морды допотопных мэйнфреймов

, при этом постоянно и очень агрессивно почему-то выдают себя за самый передовой отряд человечества...

Да ладно.
Ну Java тут, на самом деле, не причем, а для меня да, типично, люблю я почморить вибистов, да и не только их
Ну а про "самый передовой отряд человечества" это все верно, я именно из этого отряда, к мордам, правда, отношения не имею

Re: Индекс элемента в массиве. VB6
Добавлено: 03 сен 2008, 13:43
Stanislav
gershte писал(а):Stanislav писал(а):На самом деле решение с if - совсем неплохое, только его VB убивает своей интерпретацией. Можно убыстрить, если использовать арифметику указателей, но таковой я не помню в VB

Или сделать вставку на ассемблере, не знаю - можно ли это на VB.
На нете это будет значительно быстрее? В принципе оттранслировать все в VB.NET не будет очень большой проблемой.
Значительно или нет - не знаю, но будет быстрее

Re: Индекс элемента в массиве. VB6
Добавлено: 03 сен 2008, 13:45
Marmot
Stanislav писал(а):gershte писал(а):Stanislav писал(а):На самом деле решение с if - совсем неплохое, только его VB убивает своей интерпретацией. Можно убыстрить, если использовать арифметику указателей, но таковой я не помню в VB

Или сделать вставку на ассемблере, не знаю - можно ли это на VB.
На нете это будет значительно быстрее? В принципе оттранслировать все в VB.NET не будет очень большой проблемой.
Значительно или нет - не знаю, но будет быстрее

Быстрее, быстрее, соптимизируется в native code...