Jak rzucać kostką w C#?

Symulacja 10 milionów rzutów kośćmi z losową klasą C#

Myślenie i praca

mihailomilovanovic / Getty Images





Ta aplikacja używa jednego wystąpienia Losowy() klasa w obiekcie rnd . Przydziela również wystarczającą ilość miejsca do przechowywania sum dla wyników 3..18 w tablicy Rolki[] . Członek Funkcje Jedna kostka() zwraca wartość od 1 do 6 - rnd.Następny(n) zwraca wartości z zakresu 0..n-1, while Trzy Kości() dzwoni Jedna kostka() trzy razy. The konstruktor dla Rzuć Kostką() czyści Rolki tablica następnie wywołuje Trzy Kości() jednak wiele razy (w tym przypadku 10 milionów) i zwiększa odpowiednią Rolki[] element.

Ostatnią częścią jest wydrukowanie wygenerowanych sum, aby zobaczyć, że generuje rzuty zgodnie z prawdopodobieństwem. Sześciościenna kostka ma średni wynik 3,5, więc trzy kości powinny mieć średnio około 10,5. Sumy dla 10 i 11 są mniej więcej takie same i występują w około 12,5% przypadków.



Oto wynik typowego przebiegu. Zajmuje to nie więcej niż sekundę. Ponieważ jest to aplikacja konsolowa, dołączyłem

|_+_||_+_|

Poczekać, aż uderzysz w klawisz przed zamknięciem.



Wyjście programu

|_+_||_+_|

Lista programów

|_+_||_+_|