JSFiddle - React, Tailwind, and code Playground

by fristyr

JavaScript

/*
№2 (*)

Отредактировать код из примера 2.03 так чтобы в финальном сообщение выводилось с какой попытки игрок угадал число.
*/

const MIN = 1
const MAX = 5
const NUMBER = MIN + Math.floor(Math.random() * (MAX - MIN + 1))
const HOPS = 4
let message = '';
let greeting = ''

greeting += 'Сыграем в игру "Угадай число"!\n'
greeting += 'Я загадал число от ' + MIN + ' до ' + MAX + '. У тебя есть ' + HOPS + ' попыток его отгадать.\n'
greeting += 'Причем после каждой попытки я буду давать тебе подсказку.\n'

// console.log(greeting)
alert(greeting)

let isWin = false
let hint = ''

for (let i = 1; i < HOPS; i++) {
	let message = 'Твоя ' + (i) + ' попытка. Твое число:'

	if (hint) {
		message = hint + message
	}

	const answer = parseInt(prompt(message))
	// console.log(typeof answer, answer)

	if (answer === NUMBER) {
		isWin = true
    message = 'Мои поздравления! Ты угадал задуманное ' + NUMBER + ' число. Использованно попыток: ' + i; 
    alert(message)
  }

	else if (answer > NUMBER) {
		hint = 'Задуманное число меньше ' + answer + '\n'
		continue
	}

	else {
		hint = 'Задуманное число больше ' + answer + '\n'
		continue
	}

	if (isWin) {
		break
	}
}

/* if (isWin) {
  message = 'Мои поздравления! Ты угадал задуманное ' + NUMBER + ' число. Попытка ' + i; 
  alert(message)
} */

if (!isWin) {
	message = 'Увы! Загаданное число было ' + NUMBER + '. В следующий раз сыграешь лучше.'
	alert(message)
}