Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Zufallsprogrammierung

Ähnliche Präsentationen


Präsentation zum Thema: "Zufallsprogrammierung"—  Präsentation transkript:

1 Zufallsprogrammierung
Ein Würfelspiel Zufallsprogrammierung

2 Was soll das Programm können?
auf Knopfdruck eine Augenzahl anzeigen die Augenzahl einem von zwei Spielern dazu addieren unterscheiden, ob das Ergebnis kleiner, gleich oder größer einer Grenze ist ggf. angeben, wer gewonnen hat (wer genau z.B. 30 Punkte erzielt hat) sich auf Knopfdruck beenden ein neues Spiel beginnen können

3 Benötigte Variablen Zufallszahl (zur Ermittlung der „gewürfelten“ Zahl) Stand1 und stand2 (Punktestand der beiden Spieler) Grenze (Punktestand, bei dem gewonnen wurde) Spieler (Zählervariable, welcher Spieler dran ist)

4 Struktogramm-Überblick
Zufallszahl bestimmen Zufallszahl anzeigen Spielbetrieb Auswertung

5 Struktogramm Spielbetrieb
Spieler = 1 ja nein stand1 + zufall < grenze + 1 ja nein stand2 + zufall < grenze + 1 ja nein stand1 erhöhen msgBox (!) stand1 erniedrigen stand2 erhöhen msgBox (!) stand2 erniedrigen stand1 anzeigen stand2 anzeigen Spieler = 2 Spieler = 1 Buttontext ändern Buttontext ändern

6 Struktogramm Spielbetrieb
Spieler = 1 ja nein stand1 + zufall < grenze + 1 ja nein stand2 + zufall < grenze + 1 ja nein stand1 erhöhen msgBox (!) stand1 erniedrigen stand2 erhöhen msgBox (!) stand2 erniedrigen stand1 anzeigen stand2 anzeigen Spieler = 2 Spieler = 1 Buttontext ändern Buttontext ändern Auswertung

7 Struktogramm Auswertung
stand1 = grenze ja nein Vorsicht! Hier ist ein Fehler drin. Haben wir aber besprochen. MsgBox(„Spieler 1 ist Sieger“) stand2 = grenze ja nein MsgBox(„Spieler 2 ist Sieger“) stand1 = grenze und stand 2 = grenze ja nein MsgBox(„Unentschieden“) Eventuell Löschen der bisherigen Werte

8 Bestimmen der Zufallszahl
Ein kleines Vorprogramm: Starten Sie erneut VB: Eine Form mit einem Button und einem Label: Code: Dim zufall As single Zufall = Rnd() label1.Text = zufall

9 Test des Zufallsgenerators
Es werden mit Hilfe der VB-Funktion zufällig Zahlen zwischen 0 und 0, erzeugt. Programm schließen und erneut starten... Es werden immer die gleichen „Zufallszahlen“ erzeugt. ...von wegen Zufall

10 Randomize Die Funktion Rnd arbeitet immer mit dem gleichen Startwert, dieser muss aber variabel sein: Einfügen der Zeile „Randomize“ Dim zufall As Single Randomize() zufall = Rnd() label1.Text = zufall

11 2. Test Funktioniert!!! Aber was bringen uns Zahlen zwischen 0 und 0,999999? Wir brauchen Zufallszahlen zwischen 1 und 6!

12 Die Funktion Int Schneidet alle Nachkommastellen ab:
Dann hätten wir lauter Nullen.  Wenn wir aber mit 10 multiplizieren: 0,23 * 10 = 2,3  Int(2,3) = 2

13 Ein Versuch mit Int ...im Hilfsprogramm Dim zufall As Single
Randomize() zufall = Int(Rnd() * 6) label1.Text = zufall Und ein Test ergibt...

14 Test mit Int ... wir erhalten Zahlen zwischen 0 und 5!
Das Problem wird gelöst, indem wir...

15 Test mit Int Geschafft! ... wir erhalten Zahlen zwischen 0 und 5!
Das Problem wird gelöst, indem wir zu allen errechneten Zahlen 1 addieren: Dim zufall As Single Randomize() zufall = Int(Rnd() * 6) + 1 label1.Text = zufall Geschafft!

16 Und los geht‘s Nu müsstet ihr eigentlich klar kommen.


Herunterladen ppt "Zufallsprogrammierung"

Ähnliche Präsentationen


Google-Anzeigen