Maxymiser task 02

by Vladimir

HTML

<a id="start" href="#">Начало игры</a>

JavaScript

document.getElementById('start').onclick = function() {
    
var CHOICE_MAX = 50;
var programChoice = Math.floor((CHOICE_MAX - 1) * Math.random()) + 1;
var currentIteration = 0;
var MAX_ITERATION = 10;
var prevUserChoice = 10 * CHOICE_MAX;
var prevDelta;
var curUserChoice;
var curDelta;
var infoForUser = 'Число от 1 до ' + CHOICE_MAX + ' загадано. Угадывай, пользователь';

while(currentIteration <= MAX_ITERATION) { // prevent infinity loop with incorrect break
    if(currentIteration == MAX_ITERATION) {
        alert('Ты проиграл, было загадано ' + programChoice);
        break;
    }
    if(currentIteration > 0) {
        prevDelta = Math.abs(prevUserChoice - programChoice);
        curDelta = Math.abs(curUserChoice - programChoice);
        if(curDelta === prevDelta) {
            infoForUser = 'так же тепло, как впрошлый раз';
        } else if(curDelta < prevDelta) {
            infoForUser = 'теплее';
        } else {
            infoForUser = 'холоднее';
        }
        prevUserChoice = curUserChoice;
    }
    do {
        curUserChoice = parseInt(prompt(infoForUser));
    } while(isNaN(curUserChoice));

    if(curUserChoice === programChoice) {
        alert(' угадал, хитрец, за ' + (currentIteration-1) + ' попыток.');
        break;
    }
       currentIteration++;      
}
    
};