Roulette-Simulator

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Benutzeravatar
Kurtosis
User
Beiträge: 55
Registriert: Samstag 11. Dezember 2010, 14:32

Hallo,

ich bin mir nicht ganz sicher, in welches Forum der Beitrag am besten passt, deswegen habe ich mich im Zweifel für dieses hier entschieden. Nun zu meinem Anliegen: ich programmiere zur Zeit einen Roulette-Simulator, der auch schon einige Dinge bisher ganz gut kann, aber es gibt noch so ein paar i-Tüpfelchen, die eine coole Sache wären, wenn er das kann. Das ganze Programm wird im Terminal ausgeführt, hat also keine grafische Oberfläche. Mit jedem Spielzug wird der Kontostand natürlich aktualisiert und das Programm läuft so lange, bis der Kontostand gleich Null ist. Ich würde es nun cool finden, wenn mir dann am Ende des Programms noch eine Grafik zum Verlauf des Budgets ausgeworfen wird. Wichtig ist ja, dass meist unterschiedlich viele Daten aufgenommen werden, die dann verarbeitet werden. Wie bringe ich dem Programm aber nun bei, dass es auch nach 100 Spielrunden noch weiß, welche Zahl als 3., 10., usw. ausgespielt wurde? Wenn ich das dann irgendwann programmiert habe, will ich dann noch, dass das Programm am Ende noch eine kleine Statistik ausgibt à la "Schwarz: X%, Rot: Y%", oder "1-12: X%, 13-24: Y%, 25-36: Z%". Anmerkung: Ich weiß, wie die Wahrscheinlichkeitsrechnung dahinter aussieht und wie die Verteilungen aussehen sollten, dennoch liebe ich Statistiken! :D
So wie ich mir das als ambitionierter Anfänger vorstelle, muss das Programm eine Datenbank anlegen und da die Ergebnisse reinschreiben, worauf sie dann am Ende des Programms zugreift. Wobei beim zweiten Punkt mit den Statistiken gibt es sicher noch andere Wege.

Ich würde mich also über ein, zwei hilfreiche Links zu dem Thema und natürlich über ein paar Tipps dazu freuen! Wenn noch Dinge unklar sind, fragt! Danke schonmal!
Benutzeravatar
bwbg
User
Beiträge: 407
Registriert: Mittwoch 23. Januar 2008, 13:35

Am besten beginnst du damit, die relevanten Ergebnisse/Daten jeder Runde (Zahl, Budget, ggf. gesetzte Jetons) in eine Liste zu packen. Am Ende des Spiels kannst Du dann nach Belieben die angefallenen Daten verwursten.

Mir ist folgende Struktur in den Sinn gekommen:

Code: Alles auswählen

list:
    tuple:
        Zahl,
        Budget,
        tuple:
            gesetzter Jeton*
*) Wobei man hier auch jede Menge erfinden kann, um die Dinge wie Rouge/Noir, Pair/Unpair, Gruppierungen, einzelne Zahlen, etc. aufzunehmen.

Grüße ... bwbg
"Du bist der Messias! Und ich muss es wissen, denn ich bin schon einigen gefolgt!"
BlackJack

Wobei man bei einer dreifach verschachtelten Datenstruktur aus Grunddatentypen auch langsam überlegen könnte eigene Datentypen zu schreiben. Die äusserste Liste wäre vom Typ her ja zum Beispiel eine Historie/ein Verlauf. Auf der Klasse könnte man dann zum Beispiel die Methoden zum persistenten Speichern und vielleicht auch welche zum Auswerten unterbringen.
Benutzeravatar
bwbg
User
Beiträge: 407
Registriert: Mittwoch 23. Januar 2008, 13:35

Und das im Idealfall gleich als Strategie. ;)
"Du bist der Messias! Und ich muss es wissen, denn ich bin schon einigen gefolgt!"
Benutzeravatar
/me
User
Beiträge: 3555
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

bwbg hat geschrieben:Und das im Idealfall gleich als Strategie. ;)
Die einzig sinnvolle Strategie beginnt beim Roulette damit, gar nicht erst anzufangen.
BlackJack

@/me: Nee, es gibt noch eine andere: Ein Spielcasino mit Roulettetischen eröffnen, weil es genug Leute gibt, die glauben es gäbe sinnvollere Strategien als die von Dir vorgeschlagene. :twisted:
Benutzeravatar
Kurtosis
User
Beiträge: 55
Registriert: Samstag 11. Dezember 2010, 14:32

Danke schonmal für die beiden sinnvollen Kommentare. Ich werde dann mal gucken, was sich da so machen lässt! :D

Mal ne kleine Anmerkung, weil ich keinen Bock auf diese Langweiler-Kommentare à la "Bla bla der Erwartungswert ist immer negativ und bla bla gar nicht erst spielen" habe: Man spielt nicht Roulette oder ein vergleichbares Glücksspiel, um Geld zu verdienen, sondern einfach um Spaß zu haben und wenn man dabei bisschen Geld verdient, ist das eine schöne Sache, aber wenn man verliert, ist es auch egal.
jerch
User
Beiträge: 1669
Registriert: Mittwoch 4. März 2009, 14:19

Kurtosis hat geschrieben:Mal ne kleine Anmerkung, weil ich keinen Bock auf diese Langweiler-Kommentare à la "Bla bla der Erwartungswert ist immer negativ und bla bla gar nicht erst spielen" habe: Man spielt nicht Roulette oder ein vergleichbares Glücksspiel, um Geld zu verdienen, sondern einfach um Spaß zu haben und wenn man dabei bisschen Geld verdient, ist das eine schöne Sache, aber wenn man verliert, ist es auch egal.
Man kann diese Warnungen nicht oft genug bemühen, gerade Glücksspiele haben ein gewisses Suchtpotential, was die Leute in den finanziellen Ruin treibt. Dabei von Geldverdienen zu sprechen, ist ein schlechter Scherz*. Wenn Dein Simulator fertig ist und die Randomisierung halbwegs zufällig ist, kannst Du das ja testen und wirst feststellen, dass nur die Bank "verdient".

[*] Verdienen kommt von dienen (Beruf ausüben, arbeiten, sich mühen), wobei Geld verdienen idR die Gegenleistung für ein "Dienstverhältnis" ausdrückt. Du stehst weder in einem solchen Verhältnis zur Bank noch sind die Bemühungen zielführend, da Du nicht ohne Tricks den Ausgang der Bemühungen in Deinem Sinne (mehr Geld) beeinflussen kannst. Beim Glücksspiel kannst Du nur Geld gewinnen (ist juristisch ein großer Unterschied).
Benutzeravatar
Kurtosis
User
Beiträge: 55
Registriert: Samstag 11. Dezember 2010, 14:32

@jerch: Sind jetzt auch Millionen Deutsche Vollidioten, weil sie Lotto spielen? Will hier ernsthaft irgendjemand seinen Eltern, Großeltern oder anderen Verwandten sagen, dass diese nicht mehr ganz dicht im Kopf seien, weil sie Lotto spielen? Absolut lächerlich sowas!
Ich rede hier von einem Programm und nicht davon, "professioneller" Roulette-Spieler zu werden, und ich habe nicht mit einem Satz gesagt, dass ich irgendwelche Strategien damit testen möchte, um diese dann in der Realität auszuprobieren!
[*] Verdienen kommt von dienen (Beruf ausüben, arbeiten, sich mühen), wobei Geld verdienen idR die Gegenleistung für ein "Dienstverhältnis" ausdrückt. Du stehst weder in einem solchen Verhältnis zur Bank noch sind die Bemühungen zielführend, da Du nicht ohne Tricks den Ausgang der Bemühungen in Deinem Sinne (mehr Geld) beeinflussen kannst. Beim Glücksspiel kannst Du nur Geld gewinnen (ist juristisch ein großer Unterschied).
Bla bla bla, ist mir klar, dass man da als Gast nur gewinnen oder verlieren kann. Viel Spaß beim Haare spalten und Erbsen zählen, wenn du sonst nichts zu tun hast!
BlackJack

@Kurtosis: (Staatliches) Lotto ist eine Steuer für Leute die nicht rechnen können. ;-)

Wenn nicht Teile der Einnahmen einem guten Zweck zugeführt werden, wie zum Beispiel bei „Aktion Mensch”, dann sind Lotterien in der Tat etwas für Leute die den Betrag sinnlos aus dem Fenster werfen. Schlau ist das nicht. Das viele das Geld eigentlich nicht wirklich über haben, sondern tatsächlich spielen weil das die einzige Möglichkeit wäre aus ihrer prekären Lage heraus zu kommen, und insbesondere bei grossen Jackpots deutlich mehr spielen, halte ich für bedenklich. Da wird mit einer Mischung aus Hoffnung, Verzweiflung, und „mathematischer Behinderung” Kohle gescheffelt.
jerch
User
Beiträge: 1669
Registriert: Mittwoch 4. März 2009, 14:19

Der Schwanz wackelt doch nicht mit dem Hund! Oder doch?

Ich glaube, das ist mit Python-Boardmitteln nicht lösbar.
Benutzeravatar
cofi
Python-Forum Veteran
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

jerch hat geschrieben:Der Schwanz wackelt doch nicht mit dem Hund! Oder doch?
Klar doch, aber nur weil der Film so toll ist: http://www.imdb.com/title/tt0120885/

Und vielleicht sollte man die Roulette-Diskussion hier fuehren: http://www.python-forum.de/viewtopic.php?f=5&t=30432
Oder auch nicht, es ist dort ja schon alles gesagt.
Antworten