生成由4个数字,能组成的所有数字组合。
本帖最后由 5735988 于 2025-12-29 04:44 编辑#include <Array.au3>
Dim $aArray =
$aNewArray = _ArrayCombinations($aArray, 3,',')
_arraydisplay($aNewArray, "Array")
我想生成由这5个数字,能组成的10组数字。
其中有2个数字一样的,不要。
比如 332 266 366 133这样的不要,其他的保留。
主要是想生成 10套不一样的,三位数字
上面五个数字,随机生成 10套组合结果:
126 268 168326 162621623 236 862 182
===========================看了帮助一个小时,下面是自己写的,还是不对
Local $Y, $rand =
Local $_rStr = ""
$num = 3
For $j = 1 To $num
Local $_tStr = $rand
If StringInStr($_rStr, $_tStr) Then
$j -= 1
ContinueLoop
EndIf
$_rStr&= $_tStr&","
Next
MsgBox(0, 0, $_rStr)
有点接近了,还没好
Local $Y, $rand =
Local $_rStr = ""
$num = 3
For $j = 1 To $num
Local $_tStr = $rand
If StringInStr($_rStr, $_tStr) Then
$j -= 1
ContinueLoop
EndIf
$_rStr&= $_tStr&","
Next
MsgBox(0, 0, $_rStr)
好像答案又接近了一点点。。。
之前有个类似的帖子可以参考一下:
讨论一个题目的思路
https://www.autoitx.com/thread-73848-1-1.html
#include <Array.au3>
Global $out
Global $aArray =
Global $a, $b, $c, $d, $e = 0
Do
Do
$a = Random(0, 4, 1)
$b = Random(0, 4, 1)
$c = Random(0, 4, 1)
Until ($a <> $b and $a <> $c and $b <> $c)
$d = Int($aArray[$a] & $aArray[$b] & $aArray[$c])
Local $iIndex = _ArraySearch($out, $d)
If $iIndex = -1 Then
$out[$e] = $d
$e += 1
EndIf
Until $e = UBound($out)
_ArrayDisplay($out)
页:
[1]