Recursividad y pilas tiene problemas al inicio y en la estructura

Hemos definido una función llamada countdown con un parámetro ( n ). La función debe usar recursión para devolver un arreglo conteniendo los n enteros hasta 1 basado en el parámetro n . Si la función es llamada con un número menor a 1, la función debe devolver un arreglo vacío. Por ejemplo, llamar esta función con n = 5 debe devolver el arreglo [5, 4, 3, 2, 1] . Tu función debe usar recursión llamándose a sí misma y no debe usar bucles de ningún tipo.

  **Tu código hasta el momento**

// Cambia solo el código debajo de esta línea
function countdown(n){
if(n<-1){
  n[];
}else
{
var arr;
arr=(n + " ");
countdown(n-1);
return arr;
}
}
// Cambia solo el código encima de esta línea
  **Información de tu navegador:**

El agente de usuario es: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:90.0) Gecko/20100101 Firefox/90.0

Desafío: Utiliza recursión para crear una cuenta regresiva

Enlaza al desafío:

I don’t know what you are trying to do, but this is not valid syntax.

This is also not valid syntax.

1 Like

function countdown(n){
   if(n<-1){ //<-- aqui dice, si n es menor que -1(-2, -3...)
     n[];
/* aqui le haces referencia a un index 
de n cuando n es un numero no una lista*/
   } else { // <-- sino
      var arr; <-- inicializas arr vacío
      arr=(n + " ");// <-- a arr, le introduces n + un espacio
      countdown(n-1);// <-- llamas countdown con n - 1, se ejecuta detras del telon.
      return arr; //<-- pero aca devuelves arr que es (n + " ") es decir "n "
   }
}

n[]

me llena de duda. Si pudieras explicar mas tu proceso mental te podria aclarar mejor las dudas y ayudarte a entender recursion.

1 Like