Zufälliger Satz?

  • Hallo,
    ich habe ein kleines Problem. Ich möchte in Autoit gerne 3 oder 4 Sätze vorgeben. Davon soll Autoit dann 1 aussuchen via Zufall und dann senden. Hat jemand nen Codeschnipsel, das mir da helfen könnte?

    Gruß,
    ErweSpiele

  • Ginge so:

    [autoit]


    Global $arStr[4] = ["Satz1","Satz2","Satz3","Satz4"]

    [/autoit][autoit][/autoit][autoit]

    Send($arStr[Random(0,UBound($arStr)-1,1)],1)

    [/autoit]
    • Offizieller Beitrag

    Falls du sicher gehen möchtest, dass derselbe Satz nicht mehrfach hintereinander ausgegeben wird (bei geringer Anzahl recht große Wahrscheinlichkeit), kannst du das auch anders lösen:

    [autoit]

    Local $aSaetze[4] = [ _
    "Das ist Satz 1.", _
    "Das ist Satz 2.", _
    "Das ist Satz 3.", _
    "Das ist Satz 4."]

    [/autoit][autoit][/autoit][autoit]

    ; LeerString in den der ZufallsIndex geschrieben wird
    Local $sIndex = ''
    Local $iRandom, $iCount = 0

    [/autoit][autoit][/autoit][autoit]

    Do
    $iRandom = Random(0, UBound($aSaetze)-1, 1)
    If Not StringInStr($sIndex, $iRandom, 1) Then
    $sIndex &= $iRandom & " "
    $iCount += 1
    ConsoleWrite($aSaetze[$iRandom] & @crlf)
    EndIf
    Until $iCount = UBound($aSaetze)

    [/autoit]