怎么用VBS排列组合?

来源:百度知道 编辑:UC知道 时间:2024/05/18 02:05:55
随机生成几个数(也许十几个),之后把它们的所有排列可能性写出来,如获至宝,2,3,4,5 123,321,,........(注:123和321一样)

递归法
排列与组合不同。看你的注,应该是要组合。
答案如下:
dim msg
ss="abcde" '只改这一处即可
For k=1 To Len(ss)
Permute ss,k,""
Next
Msgbox msg
Sub Permute(sar,num,str)
If num=0 Then
msg=msg&str&";"
Else
For i=1 To Len(sar)
Call Permute(Right(sar,Len(sar)-i),num-1,str&Mid(sar,i,1))
Next
End If
End Sub

递归法 123 321 132 213 231 312,三位不带0的都有6种

答案如下:
dim msg
ss="abcde" '只改这一处即可
For k=1 To Len(ss)
Permute ss,k,""
Next
Msgbox msg
Sub Permute(sar,num,str)
If num=0 Then
msg=msg&str&";"
Else
For i=1 To Len(sar)
Call Permute(Right(sar,Len(sar)-i),num-1,str&Mid(sar,i,1))
Next
End If
End Sub
zhe shi shen me yi si