| |
Lottofee
Dies ist die Klassik-Basic-Version der Lottofee. Die Objekt-Basic-Version finden Sie hier.
Der ursprüngliche Code zum Ziehen und Sortieren der Zahlen stammt nicht von mir, sondern ist einem der zahlreichen Basic-Lottogeneratoren entnommen, die man im www findet.
Neben der Ziehung der Zahlen an sich, muss z.B. sichergestellt sein, dass jede Zahl nur einmal gezogen wird. Und richtig perfekt wird solch ein Programm, wenn zum Abschluss die gezogene Zahlenreihe sortiert auf dem Bildschirm ausgegeben wird.
Die folgende Lösung führt mit relativ wenig Aufwand zum Ziel.
Wie funktioniert der Lottofee-Code eigentlich?
Die Vorgaben sind bekannt: Es sollen sechs Zahlen aus 49 Möglichen gezogen und diese anschließend aufsteigend sortiert auf dem Bildschirm ausgegeben werden.
- Als erstes muss die Funktion RANDOMIZE einmal aufgerufen werden, um den Zufallsgenerator zu starten. Und schon geht es an's Zahlenziehen.
- Die FOR - NEXT-Schleife sorgt mit den übergebenen Parametern 1 TO 6 dafür, dass alle Befehle, die sich in der Schleife zwischen FOR und NEXT befinden, genau sechs mal abgearbeitet werden.
- In der Variable gezogen wird das Ergebnis der nachfolgenden Berechnung gespeichert.
- Int rundet die berechnete Zahlen auf Ganzzahlen ohne Komma ab, entfernt also die Nachkommastellen aus dem Ergebnis.
- (49 * Rnd()) + 1 wählt eine zufällige Zahl zwischen 0 und 48 aus und zählt hinterher noch eine 1 dazu, um den Zahlenbereich von 0 bis 48 nach 1 bis 49 zu verschieben.
- Die WHILE-WEND-Schleife kontrolliert, ob die eben gezogene Zahl schon einmal gezogen wurde. Falls ja, wird erneut gezogen und abermals geprüft, ob diese Zahl schon gezogen wurde. Falls nein, wird die Schleife verlassen und...
- ... in der Feldvariable zahlen(49) an der Position, die der gezogenen Zahl entspricht, eine 1 geschrieben. Die Feldvariable kann man sich bildhaft als einen Schrank mit (in diesem Fall) 49 Fächer vorstellen. In jedem Fach befindet sich als Vorgabe eine 0. Wird nun eine 3 gezogen, wird die 0 in Fach 3 durch eine 1 ersetzt.
- Zum Abschluss werden noch einmal mit einer FOR-NEXT-Schleife nacheinander alle Fächer des Schranks nach einer 1 durchsucht. Hat die Schleife z.B. beim dritten Durchlauf (also in Fach 3) eine 1 gefunden, wird nicht der Inhalt des Fachs (die 1) angezeigt, sondern die Zahl der bisherigen Durchläufe (also die 3).
Lottofee 1.11 herunterladen - Eignet sich gut, um den Lotto-Code zu studieren. 07.09.11
Die aktuelle R-Basic Version von Rainers Seite herunterladen.
Wenn Sie mit R-BASIC programmieren wollen.
Weiterführende Links
Zufallszahlen - RANDOMIZE / RND() liefert weitere Infos zum Thema.
| | |