Questione : Generatore di combinazione

HI

I vuole generare tutte le combinazioni possibili di numeri da un'entrata data. Che cosa è differente qui il formato stabilito del it
the può essere 1 carbone - 4 carboni. Nessuna ripetizione è permessa,

per esempio
ABCD

would genera quanto segue. il

I dovrebbe ottenere 2^n - 1, in questo caso 2^4 - 1 = 15 che il results

A
AB
ABC
ABCD
B
BC
BCD
C
CD
D
AC
ACD
ABD
AD
BD

is 15

What è il migliore codice di VB/VBA per generare il this

Thanks
class= del

Risposta : Generatore di combinazione

Ciao Henry,

provare prego questo codice. Produrrà alla finestra immediata, io ha usato la parola VBA.

Alex
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
Combinazioni secondarie ()
Const MYSET come stringa = “A, B, C, D, E, F„   'qualsiasi valori delimitati da„, “
aElems fiochi () come stringa, aNibs (7) come byte, i come numero intero, J come numero intero, nElems come numero intero, s come stringa

i aElems () = hanno spaccato (MYSET, “, ")
nElems = UBound (aElems)
Se nElems > 7 allora MsgBox “troppi elementi: „ & nElems + 1: Uscire il sommergibile

aNibs (0) = 1: aNibs (1) = 2: aNibs (2) = 4: aNibs (3) = 8: aNibs (4) = 16: aNibs (5) = 32: aNibs (6) = 64: aNibs (7) = 128
Per i = 1 2 a ^ (nElems + 1) - 1
    s = ""
    Per J = 0 ai nElems
        Se i e aNibs (j) allora s = s & aElems (j)
    Dopo
    Debug.Print s
Dopo
Sommergibile dell'estremità
Altre soluzioni  
 
programming4us programming4us