![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 26.12.2008
Сообщений: 73
|
![]()
Подскажите, можно ли сравнить все элементы массива с определенным значением посредством одной операции?
Пробую так: Код:
Как решить такую задачу не перебирая в сравнении все элементы массива?
Четко сформулированная задача - половина решения!
<= Спасибо оставляем в отзывах ![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 25.08.2008
Сообщений: 159
|
![]()
массив надо циклом перебирать
Код:
Последний раз редактировалось tolikman; 27.01.2009 в 15:31. |
![]() |
![]() |
#3 | |
Пользователь
Регистрация: 26.12.2008
Сообщений: 73
|
![]()
Спасибо, уважаемый tolikman. Перебирать в цикле я могу, вопрос собственно заключается в
Цитата:
Четко сформулированная задача - половина решения!
<= Спасибо оставляем в отзывах ![]() |
|
![]() |
![]() |
#4 |
Балуюсь кодами
Участник клуба
Регистрация: 09.01.2009
Сообщений: 1,837
|
![]()
А что, нужно обязательно макросом?
Лучше день потерять — потом за пять минут долететь!©
|
![]() |
![]() |
#5 | |
Пользователь
Регистрация: 26.12.2008
Сообщений: 73
|
![]() Цитата:
А вопрос возник при оптимизации кода. Просто массив большой и сравнений много.
Четко сформулированная задача - половина решения!
<= Спасибо оставляем в отзывах ![]() |
|
![]() |
![]() |
#6 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,858
|
![]() Код:
|
![]() |
![]() |
#7 |
Пользователь
Регистрация: 26.12.2008
Сообщений: 73
|
![]()
Спасибо, Игорь.
Вопрос по коду: в выражении Код:
Кстати, как я понял оператор Join работает только с одномерными массивами. P.S. жаль только, что для оптимизации кода этот вариант мне видимо не подходит ![]() в тестовом поиске в массиве с 50'000 элементов цикл справился с задачей 0,31 сек, а модель Код:
Все равно спасибо.
Четко сформулированная задача - половина решения!
<= Спасибо оставляем в отзывах ![]() |
![]() |
![]() |
#8 | ||
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,858
|
![]() Цитата:
Цитата:
Была задача затолкать поиск элемента в одну строку кода ![]() Я думал, мой код покажет куда более худшее время... Кстати, если у Вас 64-битная система, можно попробовать объявлять переменные с типом Single вместо Long... Приведите весь код цикла поиска значения в массиве. Может, найдём какой-нибудь способ увелечить быстродействие...
__Полезные надстройки для Excel. Парсинг сайтов и файлов.
![]() Последний раз редактировалось EducatedFool; 27.01.2009 в 16:56. |
||
![]() |
![]() |
#9 | |
Балуюсь кодами
Участник клуба
Регистрация: 09.01.2009
Сообщений: 1,837
|
![]() Цитата:
![]()
Лучше день потерять — потом за пять минут долететь!©
|
|
![]() |
![]() |
#10 | ||
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,858
|
![]() Цитата:
По другому никак не обнаружить соответствие строки одному из элементов массива... Так что неважно, самому организовывать цикл, или использовать функцию (свою или встроенную) - основой поиска всё равно будет цикл по всем элементам массива. Другое дело, что при наличии встроенной функции можно было бы добиться незначительного уменьшения времени, но... в данном случае Microsoft о нас не позаботился... Цитата:
Сколько всего сравнений происходит? |
||
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
выборка и сравнение из массива | Dennikid | Общие вопросы Delphi | 15 | 03.10.2008 09:25 |
добавление массива чисел в базу | kate158 | БД в Delphi | 3 | 24.09.2008 11:00 |
Перемещение из массива целых чисел... Си | Sota | Помощь студентам | 1 | 01.06.2008 19:51 |
Сравнение чисел с плавающей точкой ? | Ulex | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 11 | 12.04.2008 21:14 |
Сортировка массива чисел | Roberto | Помощь студентам | 1 | 02.04.2008 23:19 |