1
+ /*
2
+ * EJERCICIO:
3
+ * - Crea ejemplos de funciones básicas que representen las diferentes
4
+ * posibilidades del lenguaje:
5
+ * Sin parámetros ni retorno, con uno o varios parámetros, con retorno...
6
+ * - Comprueba si puedes crear funciones dentro de funciones.
7
+ * - Utiliza algún ejemplo de funciones ya creadas en el lenguaje.
8
+ * - Pon a prueba el concepto de variable LOCAL y GLOBAL.
9
+ * - Debes hacer print por consola del resultado de todos los ejemplos.
10
+ * (y tener en cuenta que cada lenguaje puede poseer más o menos posibilidades)
11
+ *
12
+ * DIFICULTAD EXTRA (opcional):
13
+ * Crea una función que reciba dos parámetros de tipo cadena de texto y retorne un número.
14
+ * - La función imprime todos los números del 1 al 100. Teniendo en cuenta que:
15
+ * - Si el número es múltiplo de 3, muestra la cadena de texto del primer parámetro.
16
+ * - Si el número es múltiplo de 5, muestra la cadena de texto del segundo parámetro.
17
+ * - Si el número es múltiplo de 3 y de 5, muestra las dos cadenas de texto concatenadas.
18
+ * - La función retorna el número de veces que se ha impreso el número en lugar de los textos.
19
+ *
20
+ * Presta especial atención a la sintaxis que debes utilizar en cada uno de los casos.
21
+ * Cada lenguaje sigue una convenciones que debes de respetar para que el código se entienda.
22
+ */
23
+
24
+
25
+ //funciones sin parametros , ni retornos
26
+
27
+ function saludar ( ) {
28
+ console . log ( "hola mundo" ) ;
29
+ } ;
30
+
31
+ saludar ( ) ;
32
+
33
+
34
+ //varios parametros
35
+ function calculadoraBasica ( a , b , operador ) {
36
+
37
+ switch ( operador ) {
38
+ case `suma` :
39
+ console . log ( `la suma es:` + ( a + b ) ) ;
40
+ break ;
41
+ case `resta` :
42
+ console . log ( `la suma es:` + ( a - b ) ) ;
43
+ break ;
44
+ case `multiplicacion` :
45
+ console . log ( `la suma es:` + ( a * b ) ) ;
46
+ break ;
47
+ case `division` :
48
+ console . log ( `la suma es:` + ( a / b ) ) ;
49
+ break ;
50
+ case `elevacion` :
51
+ console . log ( `la suma es:` + ( a ** b ) ) ;
52
+ break ;
53
+ case `residuo` :
54
+ console . log ( `la suma es:` + ( a % b ) ) ;
55
+ break ;
56
+ default :
57
+ console . log ( "por favor ingresa un operador valido" )
58
+ break ;
59
+ }
60
+ }
61
+
62
+ //resultados de la funcion con varios parametros demostrado en una calculadora basica
63
+ calculadoraBasica ( 7 , 10 , "suma" ) ; //la suma es:17
64
+ calculadoraBasica ( 7 , 10 , "resta" ) ; //la suma es:-3
65
+ calculadoraBasica ( 7 , 10 , "multiplicacion" ) ; //la suma es:70
66
+ calculadoraBasica ( 7 , 10 , "division" ) ; //la suma es:0.7
67
+ calculadoraBasica ( 7 , 10 , "elevacion" ) ; //la suma es:282475249
68
+ calculadoraBasica ( 7 , 10 , "residuo" ) ; //la suma es:7
69
+ calculadoraBasica ( 7 , 10 , "ninguno" ) ; //la suma es:por favor ingresa un operador valido
70
+
71
+
72
+ //con retorno
73
+
74
+ const calcularRectangulo = ( largo , ancho ) => {
75
+
76
+ const area = largo * ancho ;
77
+ return area ;
78
+ } ;
79
+
80
+ console . log ( calcularRectangulo ( 9 , 5 ) ) ;
81
+
82
+
83
+ //funciones dentro de funciones
84
+
85
+ //vamos a crear una funcion con ejemplo de motos
86
+
87
+ function caracteristicasDeMoto ( marca , modelo ) {
88
+ console . log ( `${ marca } ${ modelo } ` ) ;
89
+
90
+ function detallesDeMoto ( año , color ) {
91
+ console . log ( `Detalles: año ${ año } color ${ color } ` ) ;
92
+ return `la marca de la moto es ${ marca } de color ${ color } , modelo ${ modelo } del año ${ año } `
93
+ } ;
94
+ const res = detallesDeMoto ( 2024 , `rojo` ) ;
95
+ console . log ( `descripcion completa:` , res )
96
+ } ;
97
+
98
+ caracteristicasDeMoto ( `yamaha` , `r1` ) ;
99
+
100
+ // Utiliza algún ejemplo de funciones ya creadas en el lenguaje.
101
+
102
+ const numeros = [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 ] ;
103
+
104
+ const numerosMultiplicados = numeros . map ( function ( numero ) {
105
+ return numero * 4
106
+ } ) ;
107
+
108
+ console . log ( "numeros multiplicados:" , numerosMultiplicados ) ; // numeros multiplicados: 4, 8, 12, 16,20, 24, 28, 32
109
+
110
+
111
+ //variable local y global
112
+
113
+ let mensajeGlobal = "este es una varaible global" ;
114
+
115
+
116
+ function pruebaVariable ( ) {
117
+ //variable local
118
+ let mensajeLocal = "esta es una variable local" ;
119
+
120
+
121
+ console . log ( mensajeGlobal ) ;
122
+ console . log ( mensajeLocal ) ;
123
+
124
+ //se puede modificar la variable global desde la funcion
125
+ mensajeGlobal = "soy la variable global modificada desde la funcion"
126
+ } ;
127
+
128
+ pruebaVariable ( ) ;
129
+ console . log ( mensajeGlobal ) ;
130
+
131
+
132
+ /* DIFICULTAD EXTRA (opcional):
133
+ * Crea una función que reciba dos parámetros de tipo cadena de texto y retorne un número.
134
+ * - La función imprime todos los números del 1 al 100. Teniendo en cuenta que:
135
+ * - Si el número es múltiplo de 3, muestra la cadena de texto del primer parámetro.
136
+ * - Si el número es múltiplo de 5, muestra la cadena de texto del segundo parámetro.
137
+ * - Si el número es múltiplo de 3 y de 5, muestra las dos cadenas de texto concatenadas.
138
+ * - La función retorna el número de veces que se ha impreso el número en lugar de los textos.
139
+ *
140
+ * Presta especial atención a la sintaxis que debes utilizar en cada uno de los casos.
141
+ * Cada lenguaje sigue una convenciones que debes de respetar para que el código se entienda.
142
+ */
143
+
144
+
145
+ const string1 = "soy la cadena 1 ," ;
146
+ const string2 = " soy la cadena 2" ;
147
+
148
+ function pasarDeTextoANumero ( string1 , string2 ) {
149
+
150
+ const resultado = string1 + string2 ;
151
+ const numbers = [ ] ;
152
+
153
+ for ( let i = 0 ; i <= 100 ; i ++ ) {
154
+ if ( i % 3 === 0 && i % 5 === 0 ) {
155
+ console . log ( `multiplo de 3 y 5: ${ resultado } ` , ) ;
156
+ } else if ( i % 3 === 0 ) {
157
+ console . log ( `multiplo de 5: ${ string2 } ` , ) ;
158
+
159
+ } else if ( i % 5 === 0 ) {
160
+ console . log ( `multiplo de 3 : ${ string1 } ` , ) ;
161
+ } else {
162
+ numbers . push ( i ) ;
163
+ }
164
+ } ;
165
+
166
+ return numbers ;
167
+
168
+ } ;
169
+
170
+ console . log ( pasarDeTextoANumero ( string1 , string2 ) ) ;
0 commit comments