static async Task Main(string[] args) { const int numTrials = 100_000_000; Console.WriteLine("Starting Monte Carlo Tests...\n"); Console.WriteLine("Problem 1:"); Console.WriteLine("Roll 12 6-sided die. Let X be the sum of those dice."); Console.WriteLine("Calculate P(X = 60 | X > 58).\n"); var dieSim = new DieSimulator(); await dieSim.RunParallel(numTrials); }
public Controller(IModel model, Form mainForm, IView view) { this.mainForm = mainForm; this.model = model; this.view = view; commandLineParser = new CommandLineParser(this); networkClient = new NetworkClient(model.NetworkClient); videoConferencingClient = new VideoConferencingClient(this); dieSimulator = new DieSimulator(); DraggingPieceState = new DraggingPieceState(this); DraggingStackState = new DraggingStackState(this); IdleState = new IdleState(this); MeasuringState = new MeasuringState(this); MovingState = new MovingState(this); ScrollingState = new ScrollingState(this); SelectingPieceState = new SelectingPieceState(this); SelectingStackState = new SelectingStackState(this); DialogState = new DialogState(this); ResizingHandState = new ResizingHandState(this); DraggingHandPieceState = new DraggingHandPieceState(this); state = IdleState; view.Menu.ShowMenuSwitch = new ZunTzu.Visualization.MenuItem(null, false, new Menu.ShowMenuSwitchMenuItem()); mainForm.Closing += new CancelEventHandler(onMainFormClosing); mainForm.KeyPress += new KeyPressEventHandler(onKeyPress); mainForm.KeyDown += new KeyEventHandler(onKeyDown); mainForm.KeyUp += new KeyEventHandler(onKeyUp); mainForm.MouseDown += new MouseEventHandler(onMouseDown); mainForm.MouseMove += new MouseEventHandler(onMouseMove); mainForm.MouseUp += new MouseEventHandler(onMouseUp); mainForm.MouseDoubleClick += new MouseEventHandler(onMouseDoubleClick); mainForm.MouseWheel += new MouseEventHandler(onMouseWheel); //view.Tabs.BoardSelected += new BoardSelectedHandler(onBoardSelected); view.Prompter.TextEntered += new TextEnteredHandler(onTextEntered); }