Olá, Shirley! Tudo certo?
Peço desculpas pela demora no retorno.
Usamos o break dentro de um laço (como o while) para interromper a iteração. Porém suas condicionais (if/else) estão fora do seu laço, porque logo após tentativas++ você fechou a função, colocando }
Para corrigir, basta remover o sinal } e colocá-lo no final do código, ficando assim:
<script>
  var numeroPensado = sorteia(100);
  var tentativas = 1;
  while (tentativas <= 3) {
    var chute = parseInt(prompt("Chute um número de 0 a 100."));
    tentativas++;
    if (chute == numeroPensado) {
      mostra("Parabens você foi sorteado, o número foi " + numeroPensado);
      break;
    } else {
      if (chute > numeroPensado) {
        mostra("Você errou! seu chute é maior que o número sorteado ");
      } else {
        mostra("Você errou! seu chute é menor que o número sorteado");
      }
    }
  }
</script>
Caso tenha ficado com alguma dúvida, não deixe de compartilhar!
Continue praticando e evoluindo na sua jornada.
Bons estudos e até mais!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!