Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Solucionado (ver solución)
Solucionado
(ver solución)
3
respuestas

¿Será que puedo conducir?, por que cuando ejecuto el programa y es menor de edad sigue preguntando si tiene licencia de conducir?

<meta charset="UTF-8">

<script>
    function saltarLinea() {
        document.write("<br>");
    }

    function imprimir(frase) {
        document.write(frase);
        saltarLinea();
    }

    var edad = parseInt(prompt("¿Cuál es tu edad?"));
    var tieneLicencia = prompt("¿Tienes licencia? Responde S o N");

    if((edad >= 18) && (tieneLicencia == "S")) {
            imprimir("Puedes conducir");
        }

    else {
        imprimir("No puedes conducir");
    }

</script>
3 respuestas
solución!

Te va a preguntar siempre las dos cosas porque vos guardas las variables antes que se cumplan las condiciones, para que no pregunte si tiene licencia siendo menor sería así:

<meta charset="UTF-8">

<script>
    function saltarLinea() {
        document.write("<br>");
    }

    function imprimir(frase) {
        document.write(frase);
        saltarLinea();
    }

    var edad = parseInt(prompt("¿Cuál es tu edad?"));

    if(edad >=18){
    var tieneLicencia = prompt("¿Tienes licencia? Responde S o N");
    }

    if((edad >= 18) && (tieneLicencia == "S")) {
            imprimir("Puedes conducir");
        }

    else {
        imprimir("No puedes conducir");
    }

</script>

le pones una condición cuando pregunte por la licencia

<meta charset="UTF-8">

<script>
    function saltarLinea() {
        document.write("<br>");
    }

    function imprimir(frase) {
        document.write(frase);
        saltarLinea();
    }

    var edad = parseInt(prompt("¿Cuál es tu edad?"));
    var licencia;


    if(edad >= 18) 
    {
        var tieneLicencia = prompt("¿Tienes licencia? Responde S o N");

        if (tieneLicencia == "S")
        {
            imprimir("Puedes conducir");
        }
        else
        {
            imprimir("No puedes conducir");
        }
    }

    else
    {
        imprimir("No puedes conducir");
    }

</script>

Si te fijas en el código tu problema es porque colocas dos Prompt con las dos preguntas una seguida de la otra sin primero capturar el resultado de la primera pregunta, hacer la validación de la respuesta para luego realizar la siguiente pregunta y luego validar la siguiente respuesta.

Gracias Pedro Martín Pastorino y George Alejandro Marmol Reyes me ayudaron a entender.