Индекс элемента в массиве. VB6

Все, что вы хотели знать о программизме, но боялись спросить.
gershte
Житель
Сообщения: 628
Зарегистрирован: 19 фев 2007, 15:59

Индекс элемента в массиве. VB6

Сообщение gershte »

Нужно наиболее быстрым способом получать значение индекса элемента в массиве совпадающего со значением переменной.
Возможно ли это сделать не используя цикл. Цикл с ифом работают без проблем. Есть ли другой способ? Это необходимо для программы онлайн трейдинга. Поэтому нужно чтобы работало самым быстрым образом.
Заранее спасибо!
Аватара пользователя
Marmot
Графоман
Сообщения: 39283
Зарегистрирован: 17 фев 2003, 17:58
Откуда: Caulfeild
Контактная информация:

Re: Индекс элемента в массиве. VB6

Сообщение Marmot »

gershte писал(а):...нужно чтобы работало самым быстрым образом.
На VB6? :what!?: :D :lol: :roll: :mrgreen: :s2: :s3:
Аватара пользователя
Stanislav
Mr. Minority Report
Сообщения: 45271
Зарегистрирован: 19 окт 2005, 16:33
Откуда: Moscow - Richmond - New Wesт - Burnaby - PoCo

Re: Индекс элемента в массиве. VB6

Сообщение Stanislav »

gershte писал(а):Нужно наиболее быстрым способом получать значение индекса элемента в массиве совпадающего со значением переменной.
Возможно ли это сделать не используя цикл. Цикл с ифом работают без проблем. Есть ли другой способ? Это необходимо для программы онлайн трейдинга. Поэтому нужно чтобы работало самым быстрым образом.
Заранее спасибо!
Есть - на С/С++, а Мармот так не может, потому что у него Джава :lol: вот он и злобствует :lol:
gershte
Житель
Сообщения: 628
Зарегистрирован: 19 фев 2007, 15:59

Re: Индекс элемента в массиве. VB6

Сообщение gershte »

Ты наверное удивишься... Но во первых не все программисты по специальности и не могут переходить с языка который немного знают с легкостью. Во вторых единственный язык который поддерживают практически все API брокерров это по прежнему ВБ6. Соответственно и саппорт в основном по ВБ6. Поэтому я не собираюсь рассказывать им какие они не продвинутые и отсталые. Мне результат нужен а не пальцы гнуть. Ты решение знаешь кстати?
Аватара пользователя
Marmot
Графоман
Сообщения: 39283
Зарегистрирован: 17 фев 2003, 17:58
Откуда: Caulfeild
Контактная информация:

Re: Индекс элемента в массиве. VB6

Сообщение Marmot »

Stanislav писал(а):
gershte писал(а):Нужно наиболее быстрым способом получать значение индекса элемента в массиве совпадающего со значением переменной.
Возможно ли это сделать не используя цикл. Цикл с ифом работают без проблем. Есть ли другой способ? Это необходимо для программы онлайн трейдинга. Поэтому нужно чтобы работало самым быстрым образом.
Заранее спасибо!
Есть - на С/С++, а Мармот так не может, потому что у него Джава :lol: вот он и злобствует :lol:
Ну-ка, ну-ка и как это можно сделать на С/С++ не используя цикл?
gershte
Житель
Сообщения: 628
Зарегистрирован: 19 фев 2007, 15:59

Re: Индекс элемента в массиве. VB6

Сообщение gershte »

Stanislav писал(а):
gershte писал(а):Нужно наиболее быстрым способом получать значение индекса элемента в массиве совпадающего со значением переменной.
Возможно ли это сделать не используя цикл. Цикл с ифом работают без проблем. Есть ли другой способ? Это необходимо для программы онлайн трейдинга. Поэтому нужно чтобы работало самым быстрым образом.
Заранее спасибо!
Есть - на С/С++, а Мармот так не может, потому что у него Джава :lol: вот он и злобствует :lol:
Мне надо на VB6. Я не могу все переписывать под С++ из-за этой проблемы. Пока и так все работает кстати. Хочется быстрее если возможно.
Ну а насчет Мармота и Джавы все очень кстати типично. Джависты при том что в основном обслуживают морды допотопных мэйнфреймов :( , при этом постоянно и очень агрессивно почему-то выдают себя за самый передовой отряд человечества... :D Да ладно.
P.S. Програма кстати для личного пользования а не коммерческая. Видимо это не было понятно из первого поста. Понятно что если бы коммерческая она бы не была на ВБ6. Кстати свои 10 процентов в месяц она делает и на ВБ6.
Последний раз редактировалось gershte 03 сен 2008, 13:35, всего редактировалось 1 раз.
Аватара пользователя
AlexANB
Маньяк
Сообщения: 2904
Зарегистрирован: 17 фев 2003, 18:47
Откуда: Ontario

Re: Индекс элемента в массиве. VB6

Сообщение AlexANB »

gershte писал(а):Нужно наиболее быстрым способом получать значение индекса элемента в массиве совпадающего со значением переменной.
Думается, что тебе на самом деле нужен не поиск совпадения, а максимум или минимум, так?

Я это делаю квик-сортом (естественно, процедуру написал сам). Получается быстрее, чем тупой перебор массива в цикле.
Аватара пользователя
Stanislav
Mr. Minority Report
Сообщения: 45271
Зарегистрирован: 19 окт 2005, 16:33
Откуда: Moscow - Richmond - New Wesт - Burnaby - PoCo

Re: Индекс элемента в массиве. VB6

Сообщение Stanislav »

На самом деле решение с if - совсем неплохое, только его VB убивает своей интерпретацией. Можно убыстрить, если использовать арифметику указателей, но таковой я не помню в VB :-( Или сделать вставку на ассемблере, не знаю - можно ли это на VB.
Аватара пользователя
Stanislav
Mr. Minority Report
Сообщения: 45271
Зарегистрирован: 19 окт 2005, 16:33
Откуда: Moscow - Richmond - New Wesт - Burnaby - PoCo

Re: Индекс элемента в массиве. VB6

Сообщение Stanislav »

gershte писал(а):
Stanislav писал(а):
gershte писал(а):Нужно наиболее быстрым способом получать значение индекса элемента в массиве совпадающего со значением переменной.
Возможно ли это сделать не используя цикл. Цикл с ифом работают без проблем. Есть ли другой способ? Это необходимо для программы онлайн трейдинга. Поэтому нужно чтобы работало самым быстрым образом.
Заранее спасибо!
Есть - на С/С++, а Мармот так не может, потому что у него Джава :lol: вот он и злобствует :lol:
Мне надо на VB6. Я не могу все переписывать под С++ из-за этой проблемы. Пока и так все работает кстати. Хочется быстрее если возможно.
Ну а насчет Мармота и Джавы все очень кстати типично. Джависты при том что в основном обслуживают морды допотопных мэйнфреймов :( , при этом постоянно и очень агрессивно почему-то выдают себя за самый передовой отряд человечества... :D Да ладно.
Ну так оно и есть - обслуживание допотопных морд происходит самыми передовыми методами!
gershte
Житель
Сообщения: 628
Зарегистрирован: 19 фев 2007, 15:59

Re: Индекс элемента в массиве. VB6

Сообщение gershte »

AlexANB писал(а):
gershte писал(а):Нужно наиболее быстрым способом получать значение индекса элемента в массиве совпадающего со значением переменной.
Думается, что тебе на самом деле нужен не поиск совпадения, а максимум или минимум, так?

Я это делаю квик-сортом (естественно, процедуру написал сам). Получается быстрее, чем тупой перебор массива в цикле.
Нет. С квик сортом то как раз все понятно - двоичные деревья со всплыванием. А мне нужно именно позицию. Для хранения текущих данных по разным инструментам.
Аватара пользователя
Stanislav
Mr. Minority Report
Сообщения: 45271
Зарегистрирован: 19 окт 2005, 16:33
Откуда: Moscow - Richmond - New Wesт - Burnaby - PoCo

Re: Индекс элемента в массиве. VB6

Сообщение Stanislav »

Marmot писал(а):
Stanislav писал(а):
gershte писал(а):Нужно наиболее быстрым способом получать значение индекса элемента в массиве совпадающего со значением переменной.
Возможно ли это сделать не используя цикл. Цикл с ифом работают без проблем. Есть ли другой способ? Это необходимо для программы онлайн трейдинга. Поэтому нужно чтобы работало самым быстрым образом.
Заранее спасибо!
Есть - на С/С++, а Мармот так не может, потому что у него Джава :lol: вот он и злобствует :lol:
Ну-ка, ну-ка и как это можно сделать на С/С++ не используя цикл?
Совершенно понятно, что заказчик неправильно, как всегда, ставит задачу. Я имел ввиду убыстрение работы, а не отказ от цикла и сравнения (хоть и неявного) :-)
gershte
Житель
Сообщения: 628
Зарегистрирован: 19 фев 2007, 15:59

Re: Индекс элемента в массиве. VB6

Сообщение gershte »

Stanislav писал(а):На самом деле решение с if - совсем неплохое, только его VB убивает своей интерпретацией. Можно убыстрить, если использовать арифметику указателей, но таковой я не помню в VB :-( Или сделать вставку на ассемблере, не знаю - можно ли это на VB.
На нете это будет значительно быстрее? В принципе оттранслировать все в VB.NET не будет очень большой проблемой.
Аватара пользователя
Marmot
Графоман
Сообщения: 39283
Зарегистрирован: 17 фев 2003, 17:58
Откуда: Caulfeild
Контактная информация:

Re: Индекс элемента в массиве. VB6

Сообщение Marmot »

gershte писал(а): Ну а насчет Мармота и Джавы все очень кстати типично. Джависты при том что в основном обслуживают морды допотопных мэйнфреймов :( , при этом постоянно и очень агрессивно почему-то выдают себя за самый передовой отряд человечества... :D Да ладно.
Ну Java тут, на самом деле, не причем, а для меня да, типично, люблю я почморить вибистов, да и не только их :)

Ну а про "самый передовой отряд человечества" это все верно, я именно из этого отряда, к мордам, правда, отношения не имею :)
Аватара пользователя
Stanislav
Mr. Minority Report
Сообщения: 45271
Зарегистрирован: 19 окт 2005, 16:33
Откуда: Moscow - Richmond - New Wesт - Burnaby - PoCo

Re: Индекс элемента в массиве. VB6

Сообщение Stanislav »

gershte писал(а):
Stanislav писал(а):На самом деле решение с if - совсем неплохое, только его VB убивает своей интерпретацией. Можно убыстрить, если использовать арифметику указателей, но таковой я не помню в VB :-( Или сделать вставку на ассемблере, не знаю - можно ли это на VB.
На нете это будет значительно быстрее? В принципе оттранслировать все в VB.NET не будет очень большой проблемой.
Значительно или нет - не знаю, но будет быстрее :-)
Аватара пользователя
Marmot
Графоман
Сообщения: 39283
Зарегистрирован: 17 фев 2003, 17:58
Откуда: Caulfeild
Контактная информация:

Re: Индекс элемента в массиве. VB6

Сообщение Marmot »

Stanislav писал(а):
gershte писал(а):
Stanislav писал(а):На самом деле решение с if - совсем неплохое, только его VB убивает своей интерпретацией. Можно убыстрить, если использовать арифметику указателей, но таковой я не помню в VB :-( Или сделать вставку на ассемблере, не знаю - можно ли это на VB.
На нете это будет значительно быстрее? В принципе оттранслировать все в VB.NET не будет очень большой проблемой.
Значительно или нет - не знаю, но будет быстрее :-)
Быстрее, быстрее, соптимизируется в native code...
Ответить