Game no my recursia
by LuckyCat
JavaScript
// Функция генерации случайного числа от мин до макс
function getRandomInt(min, max){
return Math.floor(Math.random() * (max - min + 1)) + min;
}
// Счётчик попыток
var counter = 0;
// Количество попыток на раунд
var stopGame = 10;
//Случайное число
var min = 1;
var max = 50;
var NUMBER = getRandomInt(1, 10);
//Запускаем игру
process();
function process(myNumber, diff1){
//Начальная попытка
if(counter == 0){
var myNumber = enterNumber('Я загадала число от ' + min + ' до ' + max + '. Число попыток ' + stopGame + '. Угадывай');
if(myNumber==NUMBER){
alert('Вы угадали');
}else{
alert('Не верно');
//Определяем: ближе мы от загаданного числа или дальше.
var diff1 = Math.abs(myNumber-NUMBER);
counter++;
process(myNumber, diff1);
}
return;
}
counter++;
//Определяем: ближе мы от загаданного числа или дальше.
var diff2 = Math.abs(myNumber-NUMBER);
if(myNumber==NUMBER){
alert('Вы угадали за ' + counter + ' попытки(ок)');
}else if(counter == stopGame+1){
alert('Игра окончени, вы исчерпали все свои попытки. Загаданное число: ' + NUMBER);
}else if(diff1>=diff2){
myNumber = enterNumber('Теплее');
process(myNumber, diff2);
}else if(diff2>diff1){
myNumber = enterNumber('Холоднее');
process(myNumber, diff2);
}
}
// Проверка на число
function isNumber(n){
return !(/[^[0-9]/.test(n))
};
//Функция ввода числа
function enterNumber(msg){
myNumber = prompt(msg);
if(myNumber == null){
alert('Вы вышли из игры');
return;
}
if(!isNumber(myNumber) || myNumber==''){
return enterNumber('Вы ввели не число! Повторите попытку.');
}else{
return myNumber;
}
};