public static void Main()
bool acceptableDice = false;
string[] dice = new string[] { };
while (acceptableDice == false)
Console.WriteLine("Enter your dice rolls: ");
dice = Console.ReadLine().Split(' ');
acceptableDice = validDiceTest(dice);
private static bool validDiceTest(string[] dice)
string[] validDice = { "4", "6", "8", "10", "12", "20", "%", "100" };
foreach(string die in dice)
string[] thisDie = die.ToUpper().Split('D');
if (thisDie.Length != 2 || !validDice.Contains(thisDie[1]))
Convert.ToInt16(thisDie[0]);
private static void RollTheDice(string[] dice)
foreach (string die in dice)
string[] thisDie = die.ToUpper().Split('D');
Console.Write(die + " - ");
for (int cl = 0; cl < Convert.ToInt16(thisDie[0]); cl++)
Console.Write("{0:N0}", rand.Next(1, Convert.ToInt16(thisDie[1]) + 1) + " ");
private static void ErrorMessage(string die)
Console.WriteLine(die + " is not a valid die.");