unwissender2002 Geschrieben 16. Oktober 2003 Geschrieben 16. Oktober 2003 Hallo, ich hätt da mal wieder ein Problem ... ... also mir war langweilig also fing ich ein kleines Mastermindprogramm in Access zu programmieren (Access weil ich derzeit nix anderes kann, wenn ichs hin hab kommts in VB aber bis dahin erstmal VBA außerdem hab ich auf Arbeit kein VB) .... ... na jedenfalls macht dieses Spiel nur Sinn wenn die zu eratende Farbkombination jedesmahl unterschiedlich ist ... also nehmen man Rnd() ... super dacht ich mir klappt ja prima ... aber es wäre zu schön gewesen ... ... denn es kommt immer die gleiche Zufallszahl bzw. sogar Farbkombination beim Starten der Datenbank. Glaubt ihr nicht ... probierts aus ... schreibt in euer Startformular der Datenbank einfach : msgbox(rnd()) ... also wer kann mir helfen und mir sagen wie ich es hinbekomme, dass bei jedem Start der DB ne andere Zahl bzw. Farbkombination kommt ... Vielen Dank im Voraus. Zitieren
Peregrin Geschrieben 16. Oktober 2003 Geschrieben 16. Oktober 2003 hi, vor dem ersten aufruf von rnd() einmal Randomize() aufrufen sollte das problem beheben. also:call randomize() call msgBox(rnd()) hilfreich hierzu auch die msdn hth Zitieren
nic_power Geschrieben 16. Oktober 2003 Geschrieben 16. Oktober 2003 Hallo, das liegt daran, dass praktisch jede Programmiersprache Pseudozufallszahlen erzeugt, die von einem bestimmten "seed" abhängen. Diese seed lässt sich in C beispielsweise mit "srand" setzen. Access sollte eine entsprechende Funktion bieten, als seed-Wert kannst Du beispielsweise die aktuelle Zeit verwenden. Nic Zitieren
Nobody Geschrieben 20. Oktober 2003 Geschrieben 20. Oktober 2003 Am besten das Randomize an den Timer koppeln. Der erzeugt mit hoher Sicherheit keine gleichen Zufallszahlen. Private Sub Befehl0_Click() Randomize (Timer) MsgBox (Rnd()) End Sub Zitieren
Gast King555 Geschrieben 23. Oktober 2003 Geschrieben 23. Oktober 2003 "Randomize Timer" ist identisch mit "Randomize"! (siehe MSDN) Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.