Skip to content

Commit 6a133cd

Browse files
authored
Merge pull request mouredev#7145 from Shevotool/feature/solucion-reto-6
06 - RECURSIVIDAD - JavaScript
2 parents 3a727cc + 543e077 commit 6a133cd

File tree

1 file changed

+46
-0
lines changed

1 file changed

+46
-0
lines changed
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
/*
2+
* EJERCICIO:
3+
* Entiende el concepto de recursividad creando una función recursiva que imprima
4+
* números del 100 al 0.
5+
*/
6+
7+
function recursiva(numero) {
8+
if (numero < 0) {
9+
return;
10+
}
11+
console.log(numero);
12+
recursiva(numero - 1);
13+
}
14+
15+
recursiva(100);
16+
17+
/* * DIFICULTAD EXTRA (opcional):
18+
* Utiliza el concepto de recursividad para:
19+
* - Calcular el factorial de un número concreto (la función recibe ese número).
20+
* */
21+
function calcularFactorial(numero) {
22+
if (numero === 0 || numero === 1) {
23+
return 1;
24+
}
25+
return numero * calcularFactorial(numero - 1);
26+
}
27+
console.log(calcularFactorial(5));
28+
29+
/*
30+
- Calcular el valor de un elemento concreto (según su posición) en la
31+
* sucesión de Fibonacci (la función recibe la posición).
32+
*/
33+
function calcularValorElemento(posicion) {
34+
if (posicion === 0) return 0;
35+
if (posicion === 1) return 1;
36+
37+
let anterior = 0;
38+
let actual = 1;
39+
for (let i = 2; i <= posicion; i++) {
40+
let siguiente = anterior + actual;
41+
anterior = actual;
42+
actual = siguiente;
43+
}
44+
return actual;
45+
}
46+
console.log(calcularValorElemento(6));

0 commit comments

Comments
 (0)