Edit in JSFiddle

//exemplo de tabuada

function generateOperation(tipo) {
  var operation;
  var x = Math.floor(Math.random() * (10 - 1)) + 1;
  if(tipo == "Multiplicação") {
    operation = function multiplica(y) {
      return y * x; 
    }
  }
  else {
    operation = function soma(y) {
      return parseInt(y) + parseInt(x);
    } 
  }
  return operation;
}

var sel1 = document.getElementById('sel1');
var btn1 = document.getElementById('btn1');

function getTabuada(){
	return document.getElementById('tabuada').value;
}

function askQuestion(operation){
    var randomFactorOperation = generateOperation(operation);
    var value = getTabuada();
    alert("O resultado foi: " + randomFactorOperation(value) + ". Qual foi o outro número da " + operation + " ?" )
}

var myBtnInitialEvent = function ask(event){
    askQuestion("Adição");
}

btn1.addEventListener('click', myBtnInitialEvent);

(function(){
    var myButtonClickEvent;
	sel1.addEventListener('change',function(event){
        if(!myButtonClickEvent)
            btn1.removeEventListener('click', myBtnInitialEvent);
        else
            btn1.removeEventListener('click', myButtonClickEvent);
        
        
        var chosenOperation = this.options[this.selectedIndex].text;
        myButtonClickEvent = function (event) {
            askQuestion(chosenOperation);
        };                
        btn1.addEventListener('click', myButtonClickEvent);
	});
})();
    <div class="form-group">
      <label for="sel1">Selecione a operação que deseja aprender:</label>
      <select class="form-control" id="sel1">
        <option value = "1" selected="selected">Adição</option>
        <option value = "2" >Multiplicação</option>
      </select>
        <br>
            <label for="sel1">Tabuada de:</label>
            <input id="tabuada" class="form-control" type="text"/>
        <br>
        <button id = 'btn1' class="btn btn-success">Pratique </button>
    </div>