Protocolo 13: El bucle infinito

Medio
recursion
factorial
validation

📖Historia

🔄 Transmisión de Zeew_13 iniciada…

Un algoritmo antiguo quedó atrapado en un bucle infinito. Se llama a sí mismo sin control, consumiendo memoria sin fin. La única forma de liberarlo es rediseñarlo con recursividad controlada.

"La recursión es un espejo que debe saber cuándo dejar de reflejarse."

Debes crear una función recursiva que calcule el factorial de un número, con condiciones de salida claras.

🎯Enunciado

🎯 Objetivo

Crea una función recursiva factorial(n) que calcule el factorial de un número entero positivo.

Recordatorio: n! = n × (n-1) × (n-2) × ... × 1

📋 Especificaciones

  • Usa recursividad (la función debe llamarse a sí misma)
  • factorial(0) y factorial(1) retornan 1
  • Si n es negativo, retorna "Error: número negativo"
  • Si n no es entero, retorna "Error: debe ser entero"
  • Si n no es número, retorna "Error: no es un número"

💡 Ejemplos

factorial(5); // 120 (5 × 4 × 3 × 2 × 1)
factorial(0); // 1
factorial(1); // 1
factorial(3); // 6
factorial(-5); // "Error: número negativo"
factorial(3.5); // "Error: debe ser entero"

✅Casos de prueba

Tu solución será validada contra 6 casos de prueba

Test 1: Calcula 5!
Test 2: Caso base 0!
Test 3: Caso base 1!

... y 3 casos más

💻 Editor de código

JavaScript
Cargando editor...
Loading...