Nesse jogo, você terá 5 chances para adivinha qual o número o computador gerou, entre 0 e 20. Há cinco pistas 'muito quente, quente, morno, frio'. Os inputs são feios via console.
<meta charset="UTF-8" />
<h1>Guess the number :D</h1>
<h2 id="demo"></h2>
<p id="status"></p>
<script>
function toBreakLine() {
document.write("<br><br>");
}
function toShowMessage(message) {
//document.write(message)
document.querySelector("#demo").innerHTML = message;
toBreakLine();
}
function gerarNum(){ //Gerar numero aleatoriamente
const number = Math.round(Math.random() * 20)
return number
}
let tentativas = 5 //Numero máximo de tentativas
let acertou = false //True ou False para numero digitado igual a numero gerado
function solicitarNum() {
let valor = parseInt(prompt('Enter a number: '));
tentativas -= 1
return valor;
}
//parâmetros: numero gerado e numero inserido pelo usuario
//Retorno (status): muito quente, quente, frio, acertou
function resultadoChute(numGerado, numUsuario){
let distancia = Math.abs(numGerado - numUsuario)
let status = numUsuario + " - "
if(distancia > 0 && distancia <= 3){
status += "Está muito quente."
}else if(distancia > 3 && distancia <= 5){
status += "Está quente."
}else if(distancia > 5 && distancia <= 10){
status += "Está morno."
}else if(distancia > 10){
status += "Está frio."
}else {
status += "Acertou! Parabéns."
acertou = true
}
return status;
}
function resultado(numGerado){
let outCome = ""
if(tentativas == 0){
outCome += 'Sorry :( Game over.'
}else {
outCome += 'Parabéns ;D'
}
toShowMessage(outCome)
}
function main(){
const numGerado = gerarNum()
do {
let userInput = solicitarNum()
console.log(resultadoChute(numGerado, userInput))
console.log(`Há ${tentativas} tentativas`)
} while (tentativas > 0 && !acertou);
resultado(numGerado)
document.querySelector('#status').textContent = `O numero era ${numGerado}`
}
main()
</script>