Сравнить массивы

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Orastar
Начинающий
Начинающий
 
Сообщения: 17
Зарегистрирован: 29.11.2004 (Пн) 15:41

Сравнить массивы

Сообщение Orastar » 08.12.2004 (Ср) 15:58

Есть два массива, один одномерный массив из 4 чисел (например 1,2,3,4) и есть двухмерный масив (4 на 100). Эти два массива надо сравнить построчно, т.е. если одномерный массив совпадает с какой-нибудь стокой двумерного массива - вывести кол-во совпадений и строку которая совпала.
Буду очень признателен за помощь. Заранее спасибо.

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 08.12.2004 (Ср) 16:01

Писать одно и то же в два форума сразу нехорошо.
Изображение

Orastar
Начинающий
Начинающий
 
Сообщения: 17
Зарегистрирован: 29.11.2004 (Пн) 15:41

Сообщение Orastar » 08.12.2004 (Ср) 16:14

Да, забыл добавить. Двумерный массив создается из базы методом GetRows.

Sedge
Alternative Choice
Alternative Choice
Аватара пользователя
 
Сообщения: 1049
Зарегистрирован: 16.05.2002 (Чт) 18:23
Откуда: Somewhere-In-The-Net

Re: Сравнить массивы

Сообщение Sedge » 08.12.2004 (Ср) 16:16

Orastar писал(а):Есть два массива

А в чем загвоздка-то? Три вложенных цикла и вперед, считать совпадения... :shock:

Orastar
Начинающий
Начинающий
 
Сообщения: 17
Зарегистрирован: 29.11.2004 (Пн) 15:41

Сообщение Orastar » 08.12.2004 (Ср) 16:34

В том то и дело что, что-то не врублюсь никак.. Знал бы - не спрашивал.

Sedge
Alternative Choice
Alternative Choice
Аватара пользователя
 
Сообщения: 1049
Зарегистрирован: 16.05.2002 (Чт) 18:23
Откуда: Somewhere-In-The-Net

Сообщение Sedge » 08.12.2004 (Ср) 17:08

два вложенных цикла... врубайся, поскольку не гарантирую что написано без ошибок - заполнять массивы, тестировать и отлаживать лень:
Код: Выделить всё
'//////////////////////////////////////////////////////////////////////////////////////
  Dim iArrayOne(4) As Integer, iArrayTwo(100, 4) As Integer, j As Integer, i As Integer
  Dim bIsCompare As Boolean, iCompareCount As Integer
  Dim sTmpText As String
'//////////////////////////////////////////////////////////////////////////////////////

'.........  - здесь заносится информация в массив

iCompareCount = 0
For j = 0 To 100
  bIsCompare = True
  For i = 0 To 4
    If iArrayOne(i) <> iArrayTwo(j, i) Then
      bIsCompare = False
      Exit For
    End If
  Next
  If bIsCompare Then
    iCompareCount = iCompareCount + 1
    sTmpText = ""
    For i = 1 To 4
      sTmpText = sTmpText & ", " & iArrayTwo(j, i)
    Next
    lstArrays.AddItem sTmpText
  End If
Next
lstArrays.AddItem "Всего совпадений: " & iCompareCount
Последний раз редактировалось Sedge 10.12.2004 (Пт) 1:21, всего редактировалось 1 раз.

Orastar
Начинающий
Начинающий
 
Сообщения: 17
Зарегистрирован: 29.11.2004 (Пн) 15:41

Сообщение Orastar » 09.12.2004 (Чт) 13:19

Не получается у меня прикрутить эттот куод. Народ дайте кто-нибудь работаюший кусок кода.

Sedge
Alternative Choice
Alternative Choice
Аватара пользователя
 
Сообщения: 1049
Зарегистрирован: 16.05.2002 (Чт) 18:23
Откуда: Somewhere-In-The-Net

Сообщение Sedge » 09.12.2004 (Чт) 23:39

Гы :P :D
Каким боком не получается-то?
Хотя да, ошибка там была, поправил ее...

TEH3OP
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 143
Зарегистрирован: 12.12.2003 (Пт) 20:19
Откуда: Москва

НАТЕ

Сообщение TEH3OP » 10.12.2004 (Пт) 11:43

Orastar писал(а):Не получается у меня прикрутить эттот куод. Народ дайте кто-нибудь работаюший кусок кода.

работаюший кусок кода


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 12

    TopList  
cron