В неупорядоченном массиве К(т) есть совпадающие элементы, как их исключить? - VB

Узнай цену своей работы

Формулировка задачи:

В неупорядоченном массиве К(т) есть совпадающие элементы. Из каждой группы одинаковых элементов оставить только один, удалив остальные и поджав массив к его началу.

Решение задачи: «В неупорядоченном массиве К(т) есть совпадающие элементы, как их исключить?»

textual
Листинг программы
  1. Option Explicit
  2.  
  3. Sub main()
  4. ReDim a(999) As Variant
  5. Dim i As Long, j As Long
  6. For i = 0 To 999
  7.   Select Case Int(Rnd * 3)
  8.   Case 0: a(i) = Int(Rnd * 9)
  9.   Case 1: a(i) = Str(Int(Rnd * 9))
  10.   Case 2: a(i) = CDate(Int(Rnd * 9))
  11.   End Select
  12. Next i
  13. For i = 0 To 998
  14.   For j = i + 1 To 999
  15.     If a(i) = a(j) And VarType(a(i)) = VarType(a(j)) Then
  16.       a(j) = Empty
  17.     End If
  18.   Next j
  19. Next i
  20. For i = 0 To 999
  21.   If IsEmpty(a(i)) Then
  22.     For j = i + 1 To 999
  23.       If Not IsEmpty(a(j)) Then
  24.         a(i) = a(j)
  25.         a(j) = Empty
  26.         Exit For
  27.       End If
  28.     Next j
  29.     If j > 999 Then Exit For
  30.   End If
  31. Next i
  32. ReDim Preserve a(i - 1)
  33. MsgBox "Сжатый массив:" & vbCrLf & Join(a, vbCrLf)
  34. End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы