Zufallsgenerator mit Warscheinlichkeit

#1
Hallo,

also ich habe ein kleines spiel und da passiert es öfters das zum Bsp. Spieler 1 73% warscheinlichkeit hat zu gewinninen und Spieler 2 27% Chancen auf den Sieg haben, wie porgramiere ich das auf Excel das ich in der zelle dann nur die prozentzahl reinschreiben muss und dann auf den Button klicke und dann der Satz kommt Spieler 1 hat gewonnen.

Hoffe jemand kann mir helfen.

Gruß
Matthias
 

German

Well-Known Member
c-b Experte
#2
Warum brauchst du für so etwas einen Button? Das macht doch eine Formel genauso gut.
Nehmen wir an dein Prozentwert steht in Zelle A1 (die als Prozentwert formatiert ist), dann in einer anderen Zelle diese Formel:
=WENN(A1>0,5;"Spieler 1 hat gewonnen";"Spieler 2 hat gewonnen")
 

German

Well-Known Member
c-b Experte
#4
Natürlich. Aber was ändert das? Du wolltest anhand eines Prozentsatzes entscheiden. Ob du das nun per Formel oder per VBA Code tust, macht keinen Unterschied. Oder was habe ich an deiner Frage nicht verstanden?
 
#5
Halt ich möchte es so machrn das in zelle A1 der prozentsatz von spiler 1 steht in zelle b1 dann die von SPieler 2 und auf der dritten es dann den gewinner entscheidet aufhand der chance also das der spieler 1 mit 99% einer dementsprechend höhere chance als spieler 2 mit 1% hat
 
#6
Natürlich. Aber was ändert das? Du wolltest anhand eines Prozentsatzes entscheiden. Ob du das nun per Formel oder per VBA Code tust, macht keinen Unterschied. Oder was habe ich an deiner Frage nicht verstanden?
Halt ich möchte es so machrn das in zelle A1 der prozentsatz von spiler 1 steht in zelle b1 dann die von SPieler 2 und auf der dritten es dann den gewinner entscheidet aufhand der chance also das der spieler 1 mit 99% einer dementsprechend höhere chance als spieler 2 mit 1% hat
 

German

Well-Known Member
c-b Experte
#7
Wenn Spieler 1 eine Chance von 99% hat, dann hat Spieler 2 automatisch eine Chance von 1%. Mehr als 100% in Summe geht nicht. Wozu brauchst du dann zwei Werte? Der eine ergibt sich aus dem anderen.
 
#8
Wenn Spieler 1 eine Chance von 99% hat, dann hat Spieler 2 automatisch eine Chance von 1%. Mehr als 100% in Summe geht nicht. Wozu brauchst du dann zwei Werte? Der eine ergibt sich aus dem anderen.
Habe jetzt mal dein Formel in ne Zelle eingesetzt und in A1 die prozentzahl eingefügt und Zelle natürlich auch prozent formatiert dann steht in der Ausgaben zählen aber #name
 

German

Well-Known Member
c-b Experte
#11
Steht ja auch so in der Formel. Was soll denn bei 50% passieren? So was wie
=WENN(A1=0,5;"unentschieden";WENN(A1>0,5;"Spieler 1 hat gewonnen";"Spieler 2 hat gewonnen"))
hättest du sicher auch selbst hinbekommen, oder?
 
#14
Ich würde gerne einen zufallsgenerator machen wo ich in A1 60% reinschreibe und bei A2 40% und dann jeder von den beiden eine chance hat zu gewinnen also in dem bespiel 60 zu 40 chance aber der mit 40 soll natürlich auch gewinnen können gibt es da eine formel oder muss ich das Programmieren in VBA ?

Sry das die FRage nicht gut gestellt war ich hoffe du weißt jetzt was ich meine
 

German

Well-Known Member
c-b Experte
#15
Ja gibt es. ZUFALLSZAHL() ergibt einen Wert >=0 und <1.
1540318118789.png
In Zelle A2 trägst du deinen Wert ein.
Zelle B2 wird per Formel =1-A2 automatisch berechnet.
In Zelle C2 Formel =WENN(A2>ZUFALLSZAHL();"Spieler 1 hat gewonnen";"Spieler 2 hat gewonnen")

Mit der F9 Taste kannst du den Wert für ZUFALLSZAHL() immer wieder neu berechnen lassen und testen ob es so funktioniert wie du willst.
 
#16
Hallo ja genau so hatte ich mir es vorgestellt :) und noch eine Frage. Wenn ich Interesse hätte richtig programmieren zu lernen was für eine Plattform bzw was würdest du mir empfehlen an Ziel zu kommen? Und was für eine Programmiersprache?
 

German

Well-Known Member
c-b Experte
#19
Warum frage ich eigentlich. Die Antwort hätte ich mir denken können.
Vielleicht wirfst du hier erst mal einen Blick rein. Insbesondere Punkt 1 zeigt dir, das Programmierung nur einer der Teilbereiche ist, die in einem Team zu bewältigen sind.
https://de.wikipedia.org/wiki/Spieleentwickler
Und eine Programmiersprache zu kennen, heißt nicht programmieren zu können. Eigentlich ist die Sprache sogar relativ egal. Wichtig ist es die Zusammenhänge zu erkennen und zu verstehen und diese in mathematische Algorithmen umsetzen zu können die von einem Computerprogramm verarbeitet werden können. Die Sprache ist nur Mittel zum Zweck. Ich will jetzt gar nicht zu weit ausholen. Nicht falsch verstehen, aber wenn du noch nicht in der Lage bist ein Problem soweit zu erfassen, dass du es auch so beschreiben kannst, sodass andere es verstehen (und deine ursprüngliche Frage hier zeigt das leider), dann bist du noch viele Jahre davon entfernt über Spieleentwicklung nachzudenken. Denn nichts anderes musst du beim Programmieren machen, nur dass du es nicht jemand anderes erklärst, sondern dem Computer in Form des Programms.

Ansonsten nutze mal die Suchfunktion des Forums. Die Frage nach Spieleentwicklung taucht hier öfter auf. Mich interessiert Spieleentwicklung gar nicht, werde als Hobbycoder auch niemals gut genug dafür werden, darum kann ich nicht viel mehr dazu sagen.
 
Oben