Dúvida na página 85 questão 4 com while

Tentei fazer com while dentro de uma função mas quando chamo a função o prompt só abre uma vez e dá o resultado para todas as repetições segue meu código para análise por favor me ajudem:

	var mostra = function(frase) {
		document.write(frase + "<br>");
	};

	var tentativas = function() {
		
		var numeroDeTentativas = 1;
		
		var chute = parseInt(prompt("Qual é seu chute? Escolha um número de 0 a 100!"));
		
		while (numeroDeTentativas <= 3 && chute != numeroPensado) {

			var numeroPensado = Math.round(Math.random() * 100);
			
			if (chute == numeroPensado) {
				mostra("Parabéns, você acertou! "
						+ " O número que pensei foi: " + numeroPensado);
			}

			else if (isNaN(chute)) {
				mostra("Não é permitido letras ou palavras, apenas números!");

			} 
			
			else {
				
				if (chute > numeroPensado) {
					mostra("Seu chute foi maior que o número que pensei! O número que pensei foi: "
							+ numeroPensado);

				} 
				
				else if (chute < numeroPensado) {
					mostra("Seu chute foi menor que o número que pensei! O número que pensei foi: "
							+ numeroPensado);

				}
			}
			
					
			numeroDeTentativas++;
		}

	};

	tentativas();

Verifique se a seguinte linha de código está no local onde realmente deve estar:
var numeroPensado = Math.round(Math.random() * 100);

Bom dia!
Até onde eu saiba está na posição correta.

Era só colocar no final do while está linha: var chute = parseInt(prompt(“Qual é seu chute? Escolha um número de 0 a 100!”));
Resolvi graças ao nosso digníssimo mestre Paulo Silveira.

Que bom que conseguiu Renato. Depois vi que você não estava chamando a question para o usuário a cada tentativa. Bons estudos!

Obrigado Gracyane por sua boa vontade em me responder e tentar me ajudar valeu mesmo!