File tree 1 file changed +56
-0
lines changed
Roadmap/06 - RECURSIVIDAD/javascript 1 file changed +56
-0
lines changed Original file line number Diff line number Diff line change
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
+ * DIFICULTAD EXTRA (opcional):
7
+ * Utiliza el concepto de recursividad para:
8
+ * - Calcular el factorial de un número concreto (la función recibe ese número).
9
+ * - Calcular el valor de un elemento concreto (según su posición) en la
10
+ * sucesión de Fibonacci (la función recibe la posición).
11
+ */
12
+
13
+ /*
14
+ La recursividad es una propiedad de los lenguajes de programación que significa que una función puede llamarse a si misma.
15
+ Es útil cuando una tarea puede resolverse en tareas del mismo tipo pero más simples.
16
+ */
17
+
18
+ // Exercise
19
+
20
+ function recursion ( first , last ) {
21
+ if ( first === last ) {
22
+ console . log ( first ) ;
23
+ return first ;
24
+ }
25
+ else {
26
+ console . log ( first )
27
+ return recursion ( first + 1 , last )
28
+ }
29
+ }
30
+ // recursion(0,100);
31
+
32
+ // Extra
33
+ function factorial ( number ) {
34
+ if ( number === 0 ) {
35
+ return 1 ;
36
+ }
37
+ else if ( number === 1 ) {
38
+ return 1 ;
39
+ }
40
+ else {
41
+ return number * factorial ( number - 1 ) ;
42
+ }
43
+ }
44
+ // console.log(factorial(5)); // Print 120
45
+
46
+ function fibonacci ( position ) {
47
+ let array = [ 0 , 1 ] ;
48
+ let i ;
49
+ for ( i = 0 ; i < position - 1 ; i ++ ) {
50
+ array . push ( array [ i ] + array [ i + 1 ] ) ;
51
+ }
52
+ if ( array . length - 1 === position ) {
53
+ return array [ array . length - 1 ] ;
54
+ }
55
+ }
56
+ // console.log(fibonacci(8)); // Print 21
You can’t perform that action at this time.
0 commit comments