Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
7
respuestas

[Bug] Duda y consulta con el resultado propuesto por el profesor

<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")) {  // ---> acá lo modifiqué así: tieneLicencia == "S" , "s") 
            imprimir("Puedes conducir");
        }

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

</script>

(tieneLicencia == "S", "s") al agregar el valor de "s" habilita al usuario a que le diga que puede conducir en caso de no estar usando las mayúsculas a la hora de responder. Ya que si decía que tenía por ej: 34 años y respondía que sí tenía licencia con: s (minúscula), el programa arrojaba como resultado que no podía conducir.

Quisiera saber si esta observación/corrección está correcta.

Muchas gracias

7 respuestas

Excellente observación compañero yo tambien tenia esa duda, pero no sabia que podiamos poner una coma para poder agregar una variante de la misma respuesta o en este caso mayuscula o minuscula.

En mi opinion es una manera de resolverlo.

Si es correcta, aunque en lo personal lo colocaría como (tieneLicencia == "S" || "s") indicando un or (ó) que se leería (tieneLicencia igual igual "S" ó "s"), es decir una opcion, asi continuando con los operadores logicos que se utilizan en programacion

Inclusive si quieres indagar mas sobre el tema podrías revisar la funcion toUpperCase() de JavaScript ya que con esta podrías pasar la minuscula a mayuscula sin la necesidad de colocar (tieneLicencia == "S", "s")

Gracias compañero por la recomendación de usar la función toUpperCase()

Buenas noches, gracias por sus comentarios tienen razón la función toUpperCase lo convertira el string en mayusculas pero se debe crear una segunda variable donde se almacene el nuevo string sino marca error, me acaba de pasar.

¿Puedes conducir o quizá no?

Gracias por el aporte, Gonzalo. No conocía estas opciones: (tieneLicencia == "S" || "s")

También voy a revisar la funcion toUpperCase(), no la había visto antes.

Hola , a mi me funciona con la siguiente condicion, espero que te ayude.

 if (edad >= 18 && tienLicencia=='S' ^ tienLicencia=='s'){
            imprimir('Puedes conducir');
        }else{
            imprimir('No puedes conducir')
        }

Se entiende de el signo ^ es ó .

Saludos.

En este ejemplo, usamos la función prompt para solicitar al usuario que ingrese una cadena de texto. Luego, usamos la función toUpperCase para convertir la cadena de texto a mayúsculas y la almacenamos en una nueva variable llamada cadenaMayusculas.

<script>
  var cadena = prompt("Ingresa una cadena de texto:");
  var cadenaMayusculas = cadena.toUpperCase();

</script>

esto podria ser otra solucion ya que no importa si es S o s