Conseils

Comment lancer les dés en C #?

Comment lancer les dés en C #?

Cette application utilise une instance du Au hasard() classe dans l'objet rnd. Il alloue également suffisamment d’espace pour contenir les totaux des notes 3 à 18 dans le tableau. Rouleaux. Fonctions membres OneDice () renvoie une valeur entre 1 et 6 - rnd.Next (n) renvoie des valeurs comprises entre 0 et n-1, tandis que TroisDice () appels OneDice () trois fois. Le constructeur du Roulez les dés() efface le Rouleaux tableau appelle alors TroisDice () plusieurs fois (10 millions dans ce cas) et incrémente le nombre approprié de Rouleaux élément.

La dernière partie consiste à imprimer les totaux générés pour voir s’il génère des lancers conformément aux probabilités. Un dé à 6 faces a un score moyen de 3,5, donc trois dés devraient avoir une moyenne d'environ 10,5. Les totaux pour 10 et 11 sont à peu près les mêmes et se produisent environ 12,5% du temps.

Voici la sortie d'un run typique. Cela ne prend pas plus d'une seconde. Parce que c'est une application console, j'ai inclus un

Console.ReadKey ();

Attendre d'avoir appuyé sur une touche avant de fermer.

Sortie du programme

3 46665
4 138772
5 277440
6 463142
7 693788
8 971653
9 1157160
10 1249360
11 1249908
12 1159074
13 972273
14 695286
15 463270
16 277137
17 138633
18 46439

Liste du programme

en utilisant le système;
using System.Collections.Generic;
using System.Text;
espace de noms exrand
{
classe publique RollDice
    {
private Random rnd = new Random ();
private int Rolls = new int19; // 3 à 18 ans
public int OneDice () {
return rnd.Next (6) +1;
        }
public int ThreeDice ()
        {
renvoyer OneDice () + OneDice () + OneDice ();
        }
public RollDice (int Count)
        {
int i = 0;
pour (i = 3; i