Получить все комбинации по парам x y, чтобы получились следующие массивы - VB

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

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

Столкнулся с алгоритмической задачей, с первого взгляда казалось простой, но никак не могу решить как закодить. Есть массив значений: 1)Dx 2)Dy 3)Fx 4)Fy 5)Nx 6)Ny Исходя из него нужно получить все комбинации по парам x y, чтобы получились следующие массивы: 1 - 1)Dx, 2)Fx, 3)Nx 2 - 1)Dx, 2)Fx, 3)Ny 3 - 1)Dx, 2)Fy, 3)Nx 4 - 1)Dx, 2)Fy, 3)Ny 5 - 1)Dy, 2)Fx, 3)Nx 6 - 1)Dy, 2)Fx, 3)Ny 7 - 1)Dy, 2)Fy, 3)Nx 8 - 1)Dy, 2)Fy, 3)Ny Гуру выручайте, а то уже мозг из ушей течет
Еще количество заглавных(D,F,N) и строчных(x,y) не фиксировано.
, то есть здесь описан частный случай, может быть например D,F,N,J и x,y,g или любая другая комбинация.

Решение задачи: «Получить все комбинации по парам x y, чтобы получились следующие массивы»

textual
Листинг программы
  1. Dim n%
  2. Dim a()
  3.  
  4. Private Sub Command1_Click()
  5.  
  6. a = Array("", "Fx", "Dy", "Nz", "Gj")
  7. n = UBound(a)
  8. List1.Clear
  9. per 0, 0
  10.  
  11. End Sub
  12. Sub per(t, k)
  13. If t = n Then
  14. st = "": k = k + 1
  15.     For i = 1 To n
  16.         st = st + a(i) & vbTab
  17.     Next i
  18.    
  19.      List1.AddItem k & vbTab & st
  20.  End If
  21.  
  22.    For i = t + 1 To n
  23.       tm = a(t + 1): a(t + 1) = a(i): a(i) = tm
  24.          Call per(t + 1, k)
  25.       tm = a(t + 1): a(t + 1) = a(i): a(i) = tm
  26.     Next i
  27.  
  28. End Sub

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


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

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

7   голосов , оценка 3.286 из 5

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

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

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