<meta charset="UTF-8">
<script>
function pulaLinha() {
document.write("<br>");
}
function mostra(frase) {
document.write(frase);
pulaLinha();
}
var idade = parseInt(prompt("Qual é sua idade"));
var temCarteira = prompt("Tem carteira? Responda com S ou N");
if(idade >= 18 && temCarteira == "S"){
mostra("Você pode dirigir.")
if(idade >= 18 && temCarteira == "N"){
mostra("Você não tem carteira")
}
}else{
mostra("Você não tem idade para dirigir e obter uma carteira")
}
</script>
Porque quando colocado o if fora do outro na resposta ele mostra tanto a frase "Você pode dirigir" quanto "Você não tem idade para dirigir e obter uma carteira". Do jeito que o código está agora, com um if dentro do outro, ele consegue distinguir e mostrar apenas uma frase, sendo ela correta.