Jak rzucać kostką w C#?
Symulacja 10 milionów rzutów kośćmi z losową klasą C#
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.