Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

[Sugerencia] No hay ingredientes repetidos

Interesante Ejercicio, me surgieron 4 dudas: 1) que pasa si el usuario se equivoca al ingresar la cantidad e ingresa un letra? como lo arregla? 2) Que pasa si repite el mismo ingrediente con letras minúsculas o mayúsculas, como lo evito? 3) Que pasa si deja un elemento vacio? 4) Que ocurre si decide cambiar de cantidad.

En busca de la solución, investigue por internet y logre el siguiente código:

<meta charset="UTF-8">

<h1>Recetas de Armando</h1>

<script>

    var ingredientes = [];
    var cantidadIngredientes= false
    while(cantidadIngredientes==false){
        var cantidad = parseInt(prompt("¿Cuántos ingredientes vas a añadir?"));
        if (isNaN(cantidad)){
            alert("Escriba un número por favor");
        } else{
            cantidadIngredientes=true;
        }
    }

    var contador = 1;

    while(contador <= cantidad) {
        var ingrediente = prompt("Informe el ingrediente " + contador);
        var repetido =false;
        for (var posicion =0; posicion<ingredientes.length;posicion++){

            if (ingredientes[posicion].toUpperCase()==ingrediente.toUpperCase() || ingrediente==''){
                repetido=true;
                alert("Usted ya citó el ingrediente o dejo el campo vacio...");
                break;
            }

        }
        if (repetido==false){
                ingredientes.push(ingrediente);
                contador++;
            }

    }

    console.log(ingredientes);
    document.write("Los ingredientes listados son "+ ingredientes);

</script>

1) el uso de la función isNaN() me permite determinar si se equivoco o no al escribir la cantidad 2) Compare las 2 frases (todo con mayúsculas) .toUpperCase() para evitar la repetición, también se puede todo con minúsculas 3) use una doble comparación en if con ||(o) 4) A este no le encuentro aun una solución, pero estoy seguro que mas adelante podre aprender mejor el como gracias por las clases me ayudan mucho en entender y practicar espero que les sirva. Saludos

1 respuesta

Gracias, porque a mi no me salia el listado de ingredientes