Skip to content

Commit 80e2707

Browse files
#12 - javascript
1 parent 4bf5469 commit 80e2707

File tree

1 file changed

+150
-0
lines changed

1 file changed

+150
-0
lines changed
Lines changed: 150 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,150 @@
1+
//1 - Crea ejemplos de funciones básicas que representen las diferentes posibilidades del lenguaje:
2+
3+
// funsion simple -------------------------------
4+
// Autoejecutable
5+
(function () {
6+
console.log("Autoejecutable");
7+
})();
8+
//declarativa
9+
function hello (){
10+
console.log('hello word , funcion declarativa')
11+
}
12+
13+
14+
// Expresión (anónimas)
15+
const sumFunction = function (a, b){
16+
return a+ b
17+
}
18+
19+
20+
21+
// Flecha (arrow)
22+
const arrowFunction = (a, b) => {
23+
return a * b
24+
}
25+
26+
27+
// con retorno ------------------------------------
28+
29+
function square(number) {
30+
return number * number;
31+
}
32+
// este return puedo grardarlo en una variable
33+
let area = square(4)
34+
35+
36+
// con argumento -----------------------------------
37+
function nombre (nombre) {
38+
console.log('mi nombre es ' + nombre)
39+
}
40+
41+
42+
43+
function idioma (idioma, nombre) {
44+
console.log(idioma + nombre)
45+
}
46+
47+
48+
49+
// argumento default
50+
51+
function defaultsuma (a =5, b = 2 ){
52+
return a*b
53+
}
54+
55+
56+
57+
//Callbacks
58+
var funB = function () {
59+
return console.log('Funcion B ejecutada');
60+
};
61+
var funA = function (callback) {
62+
callback();
63+
};
64+
65+
66+
//2 - Comprueba si puedes crear funciones dentro de funciones.
67+
//Sucesión de Fibonacci complegidad 2^n
68+
69+
function fibonacci (num) {
70+
if(num < 2) return num
71+
//funciona en 0 y 1 retorna num , cuando el numero es mayor , va retrocediendo hasta llegar al 1al llegar al 1 entra en el if y es por eso que se puede parar la recursividad
72+
73+
return fibonacci(num-2) + fibonacci(num-1)
74+
}
75+
76+
console.log(fibonacci(10))
77+
78+
//3- Pon a prueba el concepto de variable LOCAL y GLOBAL.
79+
// no esoty seguro si es lo que pide...
80+
// "String.split()String.substring()String.trim()Array.map()Array.push()Array.pop()String.slice()Array.slice()Object.toString()Number.toFixed()parseInt()Math.random()console.log()"
81+
82+
//4 - Pon a prueba el concepto de variable LOCAL y GLOBAL.
83+
84+
const varGlobal = 10
85+
function sumLocalGlobal (num){
86+
const local = num
87+
return local + varGlobal
88+
}
89+
90+
console.log(sumLocalGlobal(5))
91+
92+
// - Debes hacer print por consola del resultado de todos los ejemplos.
93+
hello()
94+
console.log('funcion expersión anónimas : '+ sumFunction( 5, 2))
95+
console.log('funcion de flecha : ' + arrowFunction( 8, 3))
96+
console.log(area)
97+
nombre('David')
98+
idioma('hi', 'david')
99+
idioma('hola', 'david')
100+
console.log(defaultsuma())
101+
console.log(defaultsuma(20 , 10))
102+
funA(funB);
103+
104+
105+
// DIFICULTAD EXTRA (opcional):
106+
// * Crea una función que reciba dos parámetros de tipo cadena de texto y retorne un número.
107+
// * - La función imprime todos los números del 1 al 100. Teniendo en cuenta que:
108+
// * - Si el número es múltiplo de 3, muestra la cadena de texto del primer parámetro.
109+
// * - Si el número es múltiplo de 5, muestra la cadena de texto del segundo parámetro.
110+
// * - Si el número es múltiplo de 3 y de 5, muestra las dos cadenas de texto concatenadas.
111+
// * - La función retorna el número de veces que se ha impreso el número en lugar de los textos.
112+
113+
// primer intento no funciona
114+
// function extra (cadena1, cadena2){
115+
// let contador = 0
116+
// for(let i = 1; i <= 100; i++){
117+
// if (i % 3 != 0){
118+
// console.log(cadena1)
119+
// }
120+
// if (i % 5 != 0){
121+
// console.log(cadena2)
122+
// }
123+
// if(i%3 != 0 && i%5 !=0){
124+
// console.log(cadena1 + cadena2)
125+
// }else
126+
// contador ++
127+
// console.log(i)
128+
// }
129+
// return contador
130+
// }
131+
132+
// console.log(extra('dmultiplo3', 'dmultiplo de 5'))
133+
134+
//correcion
135+
function correccionExtra ( multiplo, multiplo2){
136+
let contador = 0
137+
for (let i = 1; i <= 100; i++){
138+
if (i % 3 === 0 && i % 5 === 0){
139+
console.log( ` es ${multiplo} y ${multiplo2}`)
140+
}else if(i % 5 === 0){
141+
console.log(multiplo2)
142+
}else if(i % 3 === 0){
143+
console.log(multiplo)
144+
}
145+
contador ++
146+
console.log(i)
147+
} return contador
148+
}
149+
150+
console.log(correccionExtra('multiplo de 3', 'multiplo de 5'))

0 commit comments

Comments
 (0)