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

los numeros no estan dentro del array

hola a todos, no se que es lo que estoy haciendo mal pues si se generan los números, pero estos no están dentro del array y no se que es lo que pasa, quiero decir que hacerlo con un while loop funciona correctamente, pero con 2 for loops no me funciona,

function sortearNumeros(cantidad) { let secrets = [];

    for (let i = 1; i <= cantidad; i++) {
      let numeroAleatorio = aleatorio();
      console.log(numeroAleatorio);
      let found = false;

      if (numeroAleatorio != 0) {
        for (let p = 0; p < secrets.length; p++) {
          if (numeroAleatorio == secrets[p]) {
            found = true;
            break;
          }

          if (found == false) {
            secrets.push(numeroAleatorio);
          }
        }
      }
    }

    return secrets;
  }

  let secrets = sortearNumeros(4);
2 respuestas

Hola Alejandro, cuando haces el primer for no declares el aumento de i++ al inicio si no cuando es agregado a secrets quedandote el for de esta manera:

for (let i = 1; i <= cantidad;){toda esta parte queda igual}

Y sumando la variable i despues de secrets.push(numeroAleatorio); quedandote de esta manera:

secrets.push(numeroAleatorio);
i++;

lo acabo de revisar y si tienes razon!!!, tambien me di cuenta que estaba aplicando esta accion

if (found == false) { secrets.push(numeroAleatorio); }

dentro del 2do for loop, (ojala me entiendan soy muy malo explicando cosas)

no me hubiera dado cuenta si no me lo marcabas xd muchas gracias bro !!!