Monty Hall Problem

JavaScript

MontyHall(true);
MontyHall(false);
function MontyHall(isHostSelecting) {
	var selectedDoor;
  var winningDoor;
  var remainingDoor;
  var remainingWinCount = 0;
  var selectedWinCount = 0;
  var trialCount = 0;
  for(var i = 0; i < 100000; i++) {
  	winningDoor = getRandomInt(1,3);
    selectedDoor = getRandomInt(1,3);
  	
    if(selectedDoor != winningDoor && isHostSelecting) {
    	remainingDoor = winningDoor;
    } else {
      remainingDoor = getRandomInt(1,3);
      while (remainingDoor == selectedDoor) {
        remainingDoor = getRandomInt(1,3);
      }
    }
    
    if(remainingDoor == winningDoor || selectedDoor == winningDoor) {
    	trialCount++;
      if(remainingDoor == winningDoor) {
      	remainingWinCount++;
      } else {
      	selectedWinCount++;
      }
    }
  }
  var remainingPercentage = remainingWinCount / trialCount * 100;
  var selectedPercentage = selectedWinCount / trialCount * 100;
  console.log('Total Trials: ' + trialCount);
  console.log('Remaining Wins: ' + remainingPercentage + '%');
  console.log('Selected Wins: ' + selectedPercentage + '%');
}
function getRandomInt(min, max) {
    return Math.floor(Math.random() * (max - min + 1)) + min;
}