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

[Sugerencia] SOLUCIÓN - ¡No hay ingredientes repetidos aquí!

Solución al reto de crear una receta sin ingredientes repetidos

Al analizar el código encontré un problema que podía escribir por ejemplo un mismo ingrediente de varias maneras por ejemplo: tomate, Tomate, TOMATE. El problema es que los iba a detectar como ingredientes diferentes entonces todos se ingresarían dentro del arreglo, entonces tras investigar encontré la función toLowerCase() que convierte el string en minúscula así todos los ingredientes se transforman y puedo evaluarlos para que no se repitan.

let ingredientes = [];
let cantidad = parseInt(prompt("¿Cuántos ingredientes vas a añadir?"));
let i = 1;

while(i <= cantidad) {
    let ingrediente = prompt("Informe el ingrediente " + i);
    // convierto el el del string en minúsculas para evitar diferencias entre caractéres y mejorar la validación para que no se repita el ingrediente.
    ingrediente = ingrediente.toLowerCase();
    let encontrado = false;
    // Trigger para evitar ingredientes repetidos.
    for(let j = 0; j < ingredientes.length; j++) {
        // Verifica si existe el nombre en alguna posición del array.
        if(ingredientes[j] == ingrediente) {
            encontrado = true;
            alert("repetido " + ingrediente);
            break;
        }
    }

    if(encontrado == false) {
        ingredientes.push(ingrediente);
        i++;
    }
}

console.log(ingredientes);
document.write('Los ingredientes son: ' + ingredientes);
1 respuesta

Hola, Apreciamos tu interés en compartir en el foro. No es necesario que publiques la respuesta a tu ejercicio aquí. Puedes hacerlo en Discord, donde hay una sección reservada para eso. El foro es principalmente para expresar tus dudas y cooperar con otros compañeros. Recordamos que no es obligatorio responder a ningún ejercicio en el foro, ni suman puntos o son usados como criterio para el avance en el programa. Pedimos que siempre que sea posible, por favor etiquetes tu tópico para que sea más sencillo identificar si es una duda, sugerencia, etc. ¡Deseamos que puedas cumplir con todos tus objetivos y tener éxito en tus estudios, saludos!

Si este post te ayudó, por favor marca como solucionado ✓ ¡Continúa con tus estudios!