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++;
}
};