Dado un entero positivo n y la tarea es encontrar el factorial de ese número con la ayuda de javaScript. Ejemplos:
Input : 4 Output : 24 Input : 5 Output : 120
Enfoque 1: método iterativo En este enfoque, usamos un ciclo for para iterar sobre la secuencia de números y obtener el factorial. Ejemplo:
html
<!DOCTYPE HTML> <html> <head> <title> Factorial of a number using JavaScript </title> </head> <body style = "text-align:center;"> <h1 style = "color:green;" > GeeksForGeeks </h1> <p id = "GFG_UP" style = "font-size: 15px; font-weight: bold;"> </p> <button onclick = "GFG_Fun()"> Click Here </button> <p id = "GFG_DOWN" style = "color:green; font-size: 20px; font-weight: bold;"> </p> <script> var up = document.getElementById('GFG_UP'); var down = document.getElementById('GFG_DOWN'); var n = 5; up.innerHTML = "Click on the button to calculate" + " the factorial of n.<br>n = " + n; function Factorial(n) { var ans=1; for (var i = 2; i <= n; i++) ans = ans * i; return ans; } function GFG_Fun() { down.innerHTML = Factorial(n); } </script> </body> </html>
Producción:
- Antes de hacer clic en el botón:
- Después de hacer clic en el botón:
Complejidad de tiempo: O(n)
Espacio Auxiliar: O(1)
Enfoque 2: método recursivo: en este enfoque, estamos llamando a la misma función una y otra vez para obtener el factorial de un número. Ejemplo:
html
<!DOCTYPE HTML> <html> <head> <title> Factorial of a number using JavaScript </title> </head> <body style = "text-align:center;"> <h1 style = "color:green;" > GeeksForGeeks </h1> <p id = "GFG_UP" style = "font-size: 15px; font-weight: bold;"> </p> <button onclick = "GFG_Fun()"> Click Here </button> <p id = "GFG_DOWN" style = "color:green; font-size: 20px; font-weight: bold;"> </p> <script> var up = document.getElementById('GFG_UP'); var down = document.getElementById('GFG_DOWN'); var n = 10; up.innerHTML = "Click on the button to calculate" + " the factorial of n.<br>n = " + n; function Factorial(n) { if (n === 0) { return 1; } else { return n * Factorial( n - 1 ); } } function GFG_Fun() { down.innerHTML = Factorial(n); } </script> </body> </html>
Producción:
- Antes de hacer clic en el botón:
- Después de hacer clic en el botón:
Complejidad de tiempo: O(n)
Espacio Auxiliar: O(1)
Publicación traducida automáticamente
Artículo escrito por PranchalKatiyar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA