Fala, José Marcio! Tudo bem contigo?
Ficou bacana sua lógica, mas eu alteraria alguns pontos.
O primeiro seria alterar o prompt
pelo mostra
, pois a cada if
ele mostra a "caixinha" esperando inserir um dado - que é a função do prompt
- com a mensagem esperada. Acredito que a função mostra
ficaria melhor.
if(idade >= 18 && temCarteira == "Sim"){
mostra("Parabéns, você pode dirigir.");
}
if(idade < 18 && temCarteira == "Sim"){
mostra("Pela lei, você não pode ter uma carteira de Habilitação com menos de 18 anos de idade.")
} else {
mostra("Você não pode dirigir.");
}
O outro ponto, perceba que se eu colocar minha reposta como
Ele mostrará "Parabéns, você pode dirigir."
e também "Você não pode dirigir."
Isso acontece porque temos um "bloco" com if
e um outro "bloco" com if e else
. Se ele satisfazer o primeiro bloco, o código vai entrar no segundo bloco e como digitei 18
não vai satisfazer o if
, logo, cai no else
.
Neste caso, podemos fazer um "único bloco" com if e else
. Por exemplo:
Se é maior de 18 anos e tem carteira de habilitação
Pode dirigir
então Se é menor de 18 anos e tem carteira de habilitação
Não pode dirigir...
então
Não pode dirigir...
Nessa situação, ele compara de uma única vez as premissas.
Espero ter ajudado, Márcio!
Um abraço e bons estudos!!