Pessoal, o código está funcionando.
A ideia é chamar a pergunta "Tem carteira?", somente quando necessário. Mas, na solução da atividade, independente da resposta da idade, o código chama a segunda pergunta.
Então, inseri o var "temCarteira" dentro do else e isso está me incomodando um pouco.
Existe outra forma de posicioná-lo no código?
var idade = parseInt(prompt("Qual é sua idade?"));
if (idade < 18){
mostra("Desculpe, mas você precisa completar 18 anos para tirar carteira.");
} else {
var temCarteira = prompt("Tem carteira? Responda S ou N");
if (temCarteira == "S"){
mostra("Parabéns! Você já pode entrar em um carro e dirigir por aí!")
} else {
mostra ("Você é um Inútil!");
}
}