Zufallsgenerator für Buchtaben

  • Moin moin Autoit-Gemeinde!

    Jeder kennt ja das Spiel (Stadt,Land,Fluss)

    Der einzige Nachteil immer muss jemand die "Buchstaben" heraufzählen und dann feststellen, dass der Buchstabe schon vorkam und muss wieder von vorne Anfangen.

    Nun gibt es ja in Autoit die Funktion Random, jedoch ist diese ja nur für Zahlen... weiß jemand ne Idee, wie man sowas auch für Buchstaben erstellen kann??? (oder gibts so eine funktion schon und ich weiß sie nur nicht???)

    Für Ideen und/oder Lösungsvorschläge würde ich mich sehr freuen!

    Volumeman

  • na ganz EASY

    nimm ein Array - pack alles von a-z rein und mach ein random 0-25 aufs Array.

    fertig

    Zitat

    Laughing Man

    "I thought, what I'd do was, I'd pretend I was one of those deaf-mutes"

  • also so könnte das Ganze aussehen:

    Spoiler anzeigen
    [autoit]


    dim $array[26] = [ "a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z" ], $i

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

    $i = Round(Random (0, 25))

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

    msgbox(0, "Zufallsbuchstabe", $array[$i])

    [/autoit]

    Allerdings bin ich der Meinung, dass aufgrund der Rundung die Buchstaben A und Z am seltensten kommen.

    Zitat

    Laughing Man

    "I thought, what I'd do was, I'd pretend I was one of those deaf-mutes"

  • Super Sache!

    Mensch das es soooo einfach ist, hätte ich ja jetzt nicht gedacht,

    ihr seit Klasse!

    jetzt muss ich dem nur noch irgendwie beibringen, dass er sich "merkt" welcher Buchstabe schonmal gekommen ist, sodass er diesen dann direkt überspringt...?

  • tja, da kannste meinen Ansatz nehmen und den Buchstaben gleich aus dem Array löschen :P

    und nicht vergessen den Counter um 1 zu senken, oder halt mit Ubound laufen lassen

    Zitat

    Laughing Man

    "I thought, what I'd do was, I'd pretend I was one of those deaf-mutes"

  • habe ich doch oben geschrieben !?

    da ich hier auch immer alles vorgekaut bekomme ;)

    Spoiler anzeigen
    [autoit]


    #include <Array.au3>

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

    dim $array[26] = [ "a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z" ], $i, $y

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

    Do
    $y = Ubound($array)-1
    $i = Round(Random (0, $y))
    msgbox(0, "Zufallsbuchstabe", $array[$i])
    _ArrayDelete($array, $i)
    Until $y = 1

    [/autoit]

    ja, das kann man auch bestimmt als Einzeiler machen... :thumbup:

    Zitat

    Laughing Man

    "I thought, what I'd do was, I'd pretend I was one of those deaf-mutes"

  • ok ok... danke danke^^

    soweit schonmal ganz gut, jetzt soll das script aber erst bei einem klick auf einen Button den Buchstaben finden und diesen dann auch anzeigen in einer GUI. GUI krieg ich noch selber hin, aber dass er den nächsten Buchstaben erst nehmen soll, wenn der Klick auf den Button kommt wohl eher nicht...

    und ja, ich brauche echt alles vorgekaut^^ WEIL, wofür soll ICH das Rad zweimal erfinden, wenn IHR das eh schon wisst, wie es funktioniert^^

    Hoffe ihr antwortet trotzdem noch, hat nämlich nix mit faulheit oder so zu tun, sondern wohl eher mit dummheit

    • Offizieller Beitrag

    ok ok... danke danke^^

    soweit schonmal ganz gut, jetzt soll das script aber erst bei einem klick auf einen Button den Buchstaben finden und diesen dann auch anzeigen in einer GUI. GUI krieg ich noch selber hin, aber dass er den nächsten Buchstaben erst nehmen soll, wenn der Klick auf den Button kommt wohl eher nicht...

    und ja, ich brauche echt alles vorgekaut^^ WEIL, wofür soll ICH das Rad zweimal erfinden, wenn IHR das eh schon wisst, wie es funktioniert^^

    Hoffe ihr antwortet trotzdem noch, hat nämlich nix mit faulheit oder so zu tun, sondern wohl eher mit dummheit

    Dann poste mal dein Script von deiner Gui . Damit man überhaupt weiß wo du was und wie gemacht hast . :huh:

  • gute Idee!

    Denn: man lernt nur wenn man es selber macht ... bei Problemen wird dir hier gut geholfen.

    wenn du allerdings ein fertig Programm haben willst, schreib das ins richtige Forum - für Scriptaufträge gibt es ein extra Forum

    oder halt seber machen ...

    die Funktion des Buttons übernimmt dann halt die Aufgabe der Schleife, die sonst drum herum liegt...

    Zitat

    Laughing Man

    "I thought, what I'd do was, I'd pretend I was one of those deaf-mutes"