1
resposta

Como faz pra permitir o acesso, no programa, mesmo que a pessoa digite um pouco diferente do que o jeito que era para digitar?

Como faz pra permitir o acesso, no programa, mesmo que a pessoa digite um pouco diferente do que o jeito que era para digitar? Tipo, se ela colocar tudo minúsculo, não entra. Como mudar isso?

<meta charset="UTF-8">
<script>
function esc(fr) {document.write(fr)}
function p() {esc(pl)}

var sh3 = "<h3>"
var sh3f ="</h3>"
var sh1 = "<h1>"
var sh1f = "</h1>"
var big = "<big>"
var bigf = "</big>"
var l = "<hr>"
var ll = "<hr><hr>"
var pl = "<br>"
var pll = "<br><hr><br>"


var resposta = prompt("Qual programa você ver? IMC ou adivinhação ?")

if(resposta == "IMC") {
  alert("Acesso liberado!")

function Mr(fr) {return Math.round(fr)}

function calImc(al, peso) {return  peso / (al * al);}

function txN(N) {return parseInt(N)}

function resP(fr) {return prompt(fr)}
function resA(fr) {return prompt(fr)}
function resN(fr) {return prompt(fr)}

var mT = Mr(1/2)

var imc = calImc(1.66, 63)
var imcMr = Mr(calImc(1.66, 63))

var imcON = sh1+resN("Qual é o seu nome? ")+", o seu IMC é "+sh1f

var imcO = calImc(resA("Qual é a sua altura ? "),resP(" Qual é o seu peso ? "));

var imcOMr = sh3+Mr(imcO)+sh3f;
var imcCN = big+imcON+imcOMr+bigf

var tx = " sei lá "

function texP() {esc(tx)}

function fra(fr) {esc(" alguma coisa ")       
                  esc(fr)
                  p()
                    }

var tx1 = sh1+"Seu IMC está entre 18,5 kg/m² e 24,9 kg/m²."+pl+"Por tanto está excelente!"+sh1f

var tx2 = sh1+"Seu IMC está abaixo de 18,5."+sh1f+big+sh3+pl+" Por tanto você está muito magro."+sh3f+bigf+pl+sh1+"O é recomendado que você"+big+" engorde!"+bigf+sh1f

var tx3 = sh1+"Seu IMC está maior que 30 kg/m²."+sh1f+big+sh3+pl+" Por tanto você está "+bigf+"obeso!"+sh3f+pl

var tx4 = big+sh1+"Seu IMC está entre 24,9 kg/m² e 30 kg/m²."+pl+bigf+sh1f+sh3+"Por tanto você está com sobrepeso!"+sh3f

function texP() {esc(tx)}



esc(imcO)
p()
esc(imcCN)
p()
if(imcO >= 18.5 && imcO <= 24.9) {esc(tx1);}

if(imcO < 18.5) {esc(tx2)}


if(imcO > 30) {esc(tx3)}
if(imcO > 24.9 && imcO < 30 ) {esc(tx4)}
                                              } 

if(resposta == "adivinhação") {    
  alert("Acesso liberado!")
    var nmrP = Math.round(Math.random() * 10);
    console.log(nmrP);
    var prg = parseInt(prompt("Qual foi o número que eu pensei?"));
    if(prg == nmrP) {esc("<h1>"+"Você acertou!"+"</h1>")                  }
        else {esc("<h1>"+"Você errou, o número pensado foi o "+nmrP+"</h1>")};
                                  } 
</script>
1 resposta

Olá Matheus, tudo certo?

Peço desculpa pela demora em responder o seu tópico.

Referente a questão que você levantou, para permitir o acesso mesmo que o usuário tenha digitado um pouco diferente, você pode seguir algumas alterações que vou estar lhe passando.

var resposta = prompt("Qual programa você ver? IMC ou adivinhação ?").toUpperCase();

Primeiramente na sua variável inicial, que agora passar a receber uma nova função, chamada toUpperCase() , que vai estar passando as strings que você enviar para essa variável todas em maiúsculas.

if(resposta == "ADIVINHAÇÃO")

Na sua sua outra condição, onde você apenas vai mudar todas as letras da comparação para maiúsculas.

Contudo, para simplificar ainda mais isso você pode estar colocando apenas a letra inicial de cada uma dos programas, segue o exemplo:

var resposta = prompt("Qual programa você ver? IMC ou adivinhação ?").toUpperCase()[0];

A unica alteração que eu fiz foi a adição de [0] ao fim do código, ele vai estar definido que apenas a primeira letra que for digitada vai ser inserida na variável, isso ajuda caso o usuário escrever de alguma forma diferente ou errada a palavra.

if(resposta == "I") {}

if(resposta == "A") {}

Por fim, alterando em ambas as condições para que compare apenas se a variável contem uma letra, que no caso I será para o programa do IMC e o A para o programa de adivinhação.

Espero que eu tenha lhe ajudado, caso tenha alguma dúvida do que foi passado vou estar a sua disposição. Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado! ✓.