Даны два массива A и B. Получить их объединение - VB

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

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

Даны два массива: A() и B(), мне нужно получить их объединение, пересечение и разности, ну как множества. Очень нужно...

Решение задачи: «Даны два массива A и B. Получить их объединение»

textual
Листинг программы
Option Explicit
Option Base 1
 
Private Sub Form_click()
   Dim a(), b()
   Dim c(), d(), e()
   Dim i, j
   Dim k_c, k_d, k_e
   Dim s_a, s_b, s_c, s_d, s_e
   Dim flag As Boolean
   
   a = Array(1, 2, 3, 4, 5)
   b = Array(7, 6, 5, 3, 4)
   
   For i = 1 To UBound(a)
      s_a = s_a & a(i) & "; "
   Next i   
   For i = 1 To UBound(b)
      s_b = s_b & b(i) & "; "
   Next i
   
   Print "Массив a: " & s_a
   Print "Массив b: " & s_b
   
   c = b
   
   For i = 1 To UBound(a)
      For j = 1 To UBound(b)
         If a(i) = b(j) Then
            k_d = k_d + 1
            ReDim Preserve d(1 To k_d)
            d(k_d) = b(j)
            '----------------------------
            flag = False
            Exit For
         Else
            flag = True
         End If
      Next j
      
      If flag Then
         k_c = k_c + 1
         ReDim Preserve c(1 To UBound(b) + k_c)
         c(UBound(b) + k_c) = a(i)
         
         k_e = k_e + 1
         ReDim Preserve e(1 To k_e)
         e(k_e) = a(i)
      End If
   Next i
   
   For i = 1 To UBound(c)
      s_c = s_c & c(i) & "; "
   Next i
   If k_d > 0 Then
      For i = 1 To UBound(d)
         s_d = s_d & d(i) & "; "
      Next i
   End If
   For i = 1 To UBound(e)
      s_e = s_e & e(i) & "; "
   Next i
   
   Print "Объединение (a + b): " & s_c
   Print "Пересечение (ab): " & s_d
   Print "Разность (a\b): " & s_e
End Sub

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


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

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

12   голосов , оценка 4.25 из 5
Похожие ответы