private static Random rnd = new Random();
public static void Main()
int[] result = new int[depth+1];
for(int coinsIterator = 0; coinsIterator < coins; coinsIterator++)
for(int depthIterator = 0; depthIterator < depth; depthIterator++)
result[timesGoesRight] += 1;
Console.WriteLine("##################");
Console.WriteLine("## Galton board ##");
Console.WriteLine("##################");
Console.WriteLine("Coins: {0}.", coins);
Console.WriteLine( "Depth: {0} levels.", depth);
Console.WriteLine("##################");
for(int slot = 0; slot <= depth; slot++){
Console.WriteLine("Slot {0} received {1} coins.", slot + 1, result[slot]);
Console.WriteLine("End of Galton Board.");
public static class RandomExtensions{
public static bool GetBoolean(this Random r){
return r.NextDouble() > 0.5;