Visual Basic 6.0 - Удаление дублей в массиве
Удаление дублей в массиве
Доброго утра/дня/вечера/ночи таищ All!
Возник вопрос нет ли в ВБ простого решения проблемы удаления повторяющихся элементов в массиве? Сейчас делаю так: есть динамический массив(вектор).
Перед добавлением очередного значения сравниваю в цикле поэлементно
с предыдущими:
if a(i)<>b then
redim preserve...
end if
А хотелось бы не проверять массив на лету, а сначала заполнить его полностью
с дублями, а потом при помощи ??? создать копию этого массива но уже без дублей(в C++/Perl решается при помощи ассоциативного массива/хэша).
Буду признателен за любые решения этого вопроса.
За сим откланиваюсь, искpенне ваш...
* Origin: God save the Screen (2:5020/1581.14)
Re: Удаление дублей в массиве
From: "Igor Evgrafov" <ievgrafo [@] jba.ru>
Hello, Jack!
You wrote to All on Wed, 08 Oct 2003 18:58:02 +0400:
JT> Возник вопрос нет ли в ВБ простого решения проблемы удаления
JT> повторяющихся элементов в массиве? Сейчас делаю так: есть динамический
JT> массив(вектор). Перед добавлением очередного значения сравниваю в цикле
JT> поэлементно с предыдущими:
JT> А хотелось бы не проверять массив на лету, а сначала заполнить его
JT> полностью с дублями, а потом при помощи ??? создать копию этого массива
JT> но уже без дублей(в C++/Perl решается при помощи ассоциативного
JT> массива/хэша). Буду признателен за любые решения этого вопроса.
Collection
Dictionary
- ---
With best regards, Igor Evgrafov.
* Origin: Cronyx Plus ISP (2:5020/400)
SysInfo
Glad To Read You, StyleR !
Вторник Октябрь 07 2003 Было когда-то 00:46, и StyleR говорил с All, и задумал
я присоединиться:
S> ! Hатолкните, пожалуйста, на функции, по которым можно узнать название
S> материнской платы, название и частоту проца, название винчестера,
S> название видюхи, объем винта, объем опертивки (желательно с типом(дим,
S> сим) и по количеству модулей) пытался копать в сторону GetSystemInfo,
S> но поиск не дал результатов.. :-( Конечно, одна функция на все вопросы
S> не оветит :-)), но, может кто0нить этим уже занимался, может
S> поможете????
Первое: поискать соответствующую библиотеку на интеловском сайте или файл
VBCPUINF
Второе: Есть такая замечательная вещь как WMI там все есть, одна беда этой
штуки нет под 98, точнее есть но надо ставить.
Hу а вообще встречалась куча библиотек с такими функциями, меня лично
устраивают оба варианта.
Пока,StyleR!!! С Уважением - Max Irgiznov [VS] [FreeBSD] [.NET]
* Origin: Экипаж прощается с вами, приятного вам полета! (2:5051/36.20)
ModemStatus
Может кто подскажет в чем ошибка моей проги ?
=============================================
Private Declare Function CreateFile Lib "kernel32" Alias "CreateFileA" (ByVal
lpFileName As String, ByVal dwDesiredAccess As Long, ByVal dwShareMode As Long,
lpSecurityAttributes As SECURITY_ATTRIBUTES, ByVal dwCreationDisposition As
Long, ByVal dwFlagsAndAttributes As Long, ByVal hTemplateFile As Long) As Long
Private Declare Function GetCommModemStatus Lib "kernel32" (ByVal hFile As
Long, lpModemStat As Long) As Long
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As
Long
Private Type SECURITY_ATTRIBUTES
nLength As Long
lpSecurityDescriptor As Long
bInheritHandle As Long
End Type
Const GENERIC_READ = &H80000000
Const GENERIC_WRITE = &H40000000
Const GENERIC_EXECUTE = &H20000000
Const GENERIC_ALL = &H10000000
Const CREATE_NEW = 1
Const CREATE_ALWAYS = 2
Const OPEN_EXISTING = 3
Const OPEN_ALWAYS = 4
Const TRUNCATE_EXISTING = 5
Const FILE_ATTRIBUTE_NORMAL = &H80
Const INVALID_HANDLE_VALUE = -1
' Modem Status Flags
Const MS_CTS_ON = &H10&
Const MS_DSR_ON = &H20&
Const MS_RING_ON = &H40&
Const MS_RLSD_ON = &H80&
Dim KaKa As SECURITY_ATTRIBUTES
Private Sub Command1_Click()
Dim CommPort As String
CommPort = "COM1"
hCommFile = CreateFile(CommPort, GENERIC_READ, 0, KaKa, OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL, 0)
If hCommFile = INVALID_HANDLE_VALUE Then
MsgBox "Unable to open " + CommPort
End If
'Get the Modem Status
If GetCommModemStatus(hCommFile, ModemStat) <> False Then
If ModemStat And MS_CTS_ON <> 0 Then MsgBox "The CTS (clear-to-send) is
on."
If ModemStat And MS_DSR_ON <> 0 Then MsgBox "The DSR (data-set-ready) is
on."
If ModemStat And MS_RING_ON <> 0 Then MsgBox "The ring indicator is on."
If ModemStat And MS_RLSD_ON <> 0 Then MsgBox "The RLSD
(receive-line-signal-detect) is on."
End If
'Close the comm port
Call CloseHandle(hCommFile)
End Sub ==========================================
Поидеи, если бы она работала, то выдавала бы статус от модема, но
вместо этого пишет Unable open Com port :(((
Если у кого есть уже такая прога ... киньте нетмылом или на:
OWL5053 [@] mail.ru
Заранее Thanks !
* Origin: www.Hz-Saratov.narod.ru (2:5053/39.9)
MsChart тормозит
Э ма хо, All !
САБЖ! Сильно. Вывод на 3 панели 10-ти спектров по 1000 точек в каждом. Как ускорить? Или может есть что-то похожее, но не такое тормозное? Я раньше делал ручной вывод Pset-ом - таких тормозов не было, но в ручную долго и плохо масштабируется. :(
Кармапа ченно
* Origin: Желтая стрела: Сансара - Hирвана (2:5030/215.57)
Re: астраиваемая панель инструментов
Мы где-то виделись, Andrey?
08 Oct 03 05:10:41 в RU.VISUAL.BASIC Andrey Shmelev -> All:
AS> Хочу узнатue как на VB можно сaeелатue сабж. апример как в Word'е:
AS> Виae->Панели инструментов->настройка, и можно метоaeом Drag&Drop
AS> перетаскиватue и уaeалятue на панеле кнопки.
AS> Если естue у кого пример, пришлите пожалста, ну или просто поaeскажите как
AS> это можно реализоватue.
Заюзай DataDynamics ActiveBar.
Всего хорошего!
Дмитрий Козырев aka Master
* Origin: Дорогу осилит идущий. (2:5023/11.148)
Re: Правильное применение GetLocaleInfo
Hello Dmitriy.
13 ноя 39 15:22, you wrote to me:
ПоHял! Большое спасибо, Дмитрий!
SK>> Может я как то не так вызываю Get...? Втоpой паpаметp - 31 нашел
SK>> методом пеpебоpа.
DK> MSDN рулит.
DK> s = Left$(s, GetLocaleInfo(LOCALE_USER_DEFAULT, LOCALE_SLONGDATE, s,
Stanislav
* Origin: Home PC, Kirov (2:5056/40.2)
SysInfo
_¦•¦_ Ответ на сообщение постинное в эху _MY.AREA_ (MY.AREA).
Трямс, _Max_ ! Медленно для тебя стучит по клаве _*StyleR*_ !
08 Окт 03 18:15, _Max Irgiznov_ писал для /StyleR/:
S>> ! Hатолкните, пожалуйста, на функции, по которым можно узнать
S>> название материнской платы, название и частоту проца, название
S>> винчестера, название видюхи, объем винта, объем опертивки
S>> (желательно с типом(дим, сим) и по количеству модулей) пытался
S>> копать в сторону GetSystemInfo, но поиск не дал результатов.. :-(
S>> Конечно, одна функция на все вопросы не оветит :-)), но, может
S>> кто0нить этим уже занимался, может поможете????
MI> Первое: поискать соответствующую библиотеку на интеловском сайте или
MI> файл VBCPUINF
.dll?
А ты мне прислать на мыло не сможешь?
MI> Второе: Есть такая замечательная вещь как WMI там все
А что это контрол или библиотеки?
Как расшифровывается, где взять? :)))
MI> есть, одна беда этой штуки нет под 98, точнее есть но надо ставить.
Мне под 98, NT4.0, w2k, wxp :-)))
MI> Hу а вообще встречалась куча библиотек с такими функциями, меня лично
MI> устраивают оба варианта.
Спасибо посмотрю
_ЗЫ: До Нового Года осталось 83 дней 2004 часов 120280 минут 7216806 секунд_
До встречи в сети или в реале _*Max*_!
/E-Mail:/ acc [@] mail.gaps.tstu.ru /ICQ:/ 128288629
* Origin: [@] origin.txt.txt.txt.txt (2:5009/2.44)
Компонент GRID32?
From: "Peter Mikheychik" <pam_fambox [@] mtu-net.ru>
Hello, All!
Случилась такая трабла! Для выполнения "ответсвенного задания" :-) в
"служебной командировке" :-)) необходимо восстановить старый проект на VB5.
Все файлы я нашел, но вот никак не могу найти компонент GRID32.OCX. Эхотагом
занимался давно - лет эдак 5-ть назад - посему не взыщите, подскажите, плз,
где такое для VB5-го можно найти? Или что-нить эквивалентное чтоб код шибко
не корячить. Требуется довольно срочно, поэтому если кто сможет помочь
файлом, то шлите плз на мыло: pmikheychik [@] vniro.ru или укажите урл где
можно это утянуть.
With best regards, Peter Mikheychik.
* Origin: MTU-Intel ISP (2:5020/400)
Pack DBF
Hi All!
Имеется следующая ситуация. Программа работает с базой данных dbf через компонент DATA. Hужно упаковать базу средствами Бейсика, программно. DBEngine работает с базами MDB. Рытье в MSDN результата не дало. Может плохо искал. Тыканье носом в УРЛы или в пример приветствуется. Только не надо понимать буквально.
Bye All!
* Origin: ..SkiP.. (2:5070/222.53)