Skip to content

Commit 27a1cd2

Browse files
authored
Merge pull request mouredev#7392 from DjSurgeon/patch-10
#6 - Javascript
2 parents a39bccb + aa6324f commit 27a1cd2

File tree

1 file changed

+56
-0
lines changed

1 file changed

+56
-0
lines changed
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
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

0 commit comments

Comments
 (0)