Skip to content

Commit 191f5b1

Browse files
authored
Merge branch 'mouredev:main' into main
2 parents 252a3c9 + 2c3b351 commit 191f5b1

File tree

5 files changed

+1360
-807
lines changed

5 files changed

+1360
-807
lines changed
Lines changed: 130 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,130 @@
1+
/*
2+
* EJERCICIO:
3+
* - Crea ejemplos utilizando todos los tipos de operadores de tu lenguaje:
4+
* Aritméticos, lógicos, de comparación, asignación, identidad, pertenencia, bits...
5+
* (Ten en cuenta que cada lenguaje puede poseer unos diferentes)
6+
* - Utilizando las operaciones con operadores que tú quieras, crea ejemplos
7+
* que representen todos los tipos de estructuras de control que existan
8+
* en tu lenguaje:
9+
* Condicionales, iterativas, excepciones...
10+
* - Debes hacer print por consola del resultado de todos los ejemplos.
11+
*
12+
* DIFICULTAD EXTRA (opcional):
13+
* Crea un programa que imprima por consola todos los números comprendidos
14+
* entre 10 y 55 (incluidos), pares, y que no son ni el 16 ni múltiplos de 3.
15+
*
16+
* Seguro que al revisar detenidamente las posibilidades has descubierto algo nuevo.
17+
*/
18+
19+
// OPERADORES ARITMÉTICOS
20+
const suma = 5 + 5;
21+
const resta = 9 - 5;
22+
const multiplicacion = 2 * 5;
23+
const division = 10 / 2;
24+
const modulo = 10 % 3;
25+
console.log("Aritméticos:", suma, resta, multiplicacion, division, modulo);
26+
27+
// OPERADORES LÓGICOS
28+
const and = true && false;
29+
const or = true || false;
30+
const not = !true;
31+
console.log("Lógicos:", and, or, not);
32+
33+
// OPERADORES DE COMPARACIÓN
34+
const igual = 4 == 4;
35+
const diferente = 4 != 5;
36+
const mayor = 5 > 4;
37+
const menor = 4 < 5;
38+
const mayorIgual = 5 >= 4;
39+
const menorIgual = 4 <= 5;
40+
const estricto = 4 === '4';
41+
const noEstricto = 4 !== '4';
42+
console.log("Comparación:", igual, diferente, mayor, menor, mayorIgual, menorIgual, estricto, noEstricto);
43+
44+
// OPERADORES DE ASIGNACIÓN
45+
let x = 5;
46+
x += 9;
47+
x -= 4;
48+
x *= 2;
49+
x /= 3;
50+
x %= 5;
51+
console.log("Asignación:", x);
52+
53+
// OPERADORES DE PERTENENCIA
54+
const persona = { nombre: "Juan", edad: 25 };
55+
console.log("Pertenencia:", "nombre" in persona, "apellido" in persona);
56+
57+
class Animal {}
58+
class Perro extends Animal {}
59+
const dog = new Perro();
60+
console.log("Instanceof:", dog instanceof Perro, dog instanceof Animal, dog instanceof Object, dog instanceof Array);
61+
62+
// OPERADORES DE BITS
63+
let a = 5; // 00000101
64+
let b = 3; // 00000011
65+
console.log("Bits:", a & b, a | b, a ^ b, ~a, a << 1, a >> 1, a >>> 1);
66+
67+
// CONDICIONALES
68+
let edad = 18;
69+
if (edad >= 18) {
70+
console.log("Eres mayor de edad");
71+
} else {
72+
console.log("Eres menor de edad");
73+
}
74+
75+
// SWITCH
76+
let dia = 3;
77+
switch (dia) {
78+
case 1: console.log("Lunes"); break;
79+
case 2: console.log("Martes"); break;
80+
case 3: console.log("Miércoles"); break;
81+
default: console.log("Día no válido");
82+
}
83+
84+
// BUCLE FOR
85+
for (let i = 1; i <= 5; i++) {
86+
console.log("Número:", i);
87+
}
88+
89+
// BUCLE WHILE
90+
let contador = 3;
91+
while (contador > 0) {
92+
console.log("Contador:", contador);
93+
contador--;
94+
}
95+
96+
// BUCLE DO WHILE
97+
let num = 0;
98+
do {
99+
console.log("Número en do-while:", num);
100+
num++;
101+
} while (num < 3);
102+
103+
// ITERANDO UN ARRAY CON forEach
104+
const numeros = [10, 20, 30];
105+
numeros.forEach(num => console.log("forEach:", num));
106+
107+
// USANDO MAP
108+
const dobles = numeros.map(num => num * 2);
109+
console.log("Map:", dobles);
110+
111+
// MANEJO DE EXCEPCIONES
112+
try {
113+
let resultado = 10 / 0;
114+
if (!isFinite(resultado)) {
115+
throw new Error("División por cero detectada");
116+
}
117+
} catch (error) {
118+
console.log("Error:", error.message);
119+
} finally {
120+
console.log("Fin del bloque try-catch");
121+
}
122+
123+
//Crea un programa que imprima por consola todos los números comprendidos
124+
//entre 10 y 55 (incluidos), pares, y que no son ni el 16 ni múltiplos de 3.
125+
126+
for ( let i = 10; i <= 55; i++){
127+
if( i % 2 === 0 && i !== 16 && i % 3 !== 0){
128+
console.log(`${i}`);
129+
}
130+
}
Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
public class AlexisDiaz000 {
2+
// 1. Función sin parámetros ni retorno
3+
public static void saludo() {
4+
System.out.println("¡Hola! Soy Alexis Diaz");
5+
}
6+
7+
// 2. Función con un parámetro y sin retorno
8+
public static void mostrarMensaje(String mensaje) {
9+
System.out.println("Mensaje recibido: " + mensaje);
10+
}
11+
12+
// 3. Función con varios parámetros y con retorno
13+
public static int sumar(int a, int b) {
14+
return a + b;
15+
}
16+
17+
// 4. Función con retorno sin parámetros
18+
public static double obtenerPi() {
19+
return 3.1415;
20+
}
21+
22+
// 5. Uso de una función ya existente en Java
23+
public static void ejemploFuncionJava() {
24+
String texto = "Hola, mundo alexis diaz aqui!";
25+
System.out.println("Texto en mayúsculas: " + texto.toUpperCase());
26+
}
27+
28+
// 6. Variables Locales vs Globales
29+
static int variableGlobal = 100; // Variable global
30+
31+
public static void mostrarVariables() {
32+
int variableLocal = 50; // Variable local
33+
System.out.println("Variable global: " + variableGlobal);
34+
System.out.println("Variable local: " + variableLocal);
35+
}
36+
37+
public static void main(String[] args) {
38+
// Llamar a cada función para ver su resultado
39+
saludo();
40+
41+
mostrarMensaje("Soy yo de nuevo Alexis diaz.");
42+
43+
int resultadoSuma = sumar(20, 8);
44+
System.out.println("Resultado de la suma es la cantidad de años que tengo actualmente: " + resultadoSuma);
45+
46+
double valorPi = obtenerPi();
47+
System.out.println("El valor de Pi es: " + valorPi);
48+
49+
ejemploFuncionJava();
50+
51+
mostrarVariables();
52+
53+
int solucion = transformador("alexis","diaz");
54+
System.out.println("NUMERO DE VECES QUE SE IMPRESO EL NUMERO Y NO EL TEXTO: " + solucion);
55+
56+
// 7. ¿Se pueden definir funciones dentro de funciones en Java?
57+
// Java NO permite definir funciones dentro de otras funciones directamente.
58+
// Sin embargo, podemos usar clases anónimas o funciones lambda en ciertos casos.
59+
}
60+
61+
/* DIFICULTAD EXTRA (opcional):
62+
* Crea una función que reciba dos parámetros de tipo cadena de texto y retorne un número.
63+
* - La función imprime todos los números del 1 al 100. Teniendo en cuenta que:
64+
* - Si el número es múltiplo de 3, muestra la cadena de texto del primer parámetro.
65+
* - Si el número es múltiplo de 5, muestra la cadena de texto del segundo parámetro.
66+
* - Si el número es múltiplo de 3 y de 5, muestra las dos cadenas de texto concatenadas.
67+
* - La función retorna el número de veces que se ha impreso el número en lugar de los textos.
68+
*
69+
* Presta especial atención a la sintaxis que debes utilizar en cada uno de los casos.
70+
* Cada lenguaje sigue una convenciones que debes de respetar para que el código se entienda.*/
71+
72+
73+
74+
public static int transformador (String cadena1, String cadena2){
75+
int contadorNumeros = 0;
76+
for (int i = 1; i <= 100; i++) {
77+
if (i % 3 == 0 && i % 5 == 0) {
78+
System.out.println(cadena1 + cadena2);
79+
} else if (i % 3 == 0) {
80+
System.out.println(cadena1);
81+
} else if (i % 5 == 0) {
82+
System.out.println(cadena2);
83+
}else {
84+
System.out.println(i);
85+
contadorNumeros++;
86+
}
87+
}
88+
return contadorNumeros;
89+
90+
}
91+
92+
}
Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
// función sin sin retorno ni parámetros...
2+
3+
function funcion1(){
4+
console.log('función sin retorno ni parámetros!');
5+
}
6+
funcion1();
7+
8+
// funciones y función con uno o varios parámetros con retorno...
9+
10+
function funcionStandar() { // con o sin parametro/s
11+
// código...
12+
console.log('Esto es una función standar');
13+
}
14+
funcionStandar();
15+
16+
arrowFunction = () => {
17+
// código...
18+
console.log('Esto es una función de flecha');
19+
}
20+
arrowFunction();
21+
22+
async function funcionAsincrona(params) {
23+
// código...
24+
console.log('Esto es una función Asíncrona');
25+
}
26+
funcionAsincrona();
27+
28+
const asyncArrowFunction = async (params) => {
29+
// código...
30+
console.log('Esto es una función Asíncrona de flecha');
31+
}
32+
asyncArrowFunction();
33+
34+
let obj = {
35+
nombreFuncion: function(param) {
36+
// código...
37+
}, // esta sintaxis solo funciona dentro de un objeto para javascript
38+
39+
nombreFuncion2: (arg) => retornarUnValor // ésta arrow function también se usa dentro de objetos
40+
}
41+
42+
function funcion2(suma) {
43+
let a = 2;
44+
let b = 2;
45+
suma = a + b;
46+
return suma;
47+
}
48+
console.log(funcion2());
49+
50+
// funciones dentro de funciones...
51+
52+
function funcion3(param) {
53+
var funcionDentroDeOtra = function() {
54+
// se agrega la logica...
55+
};
56+
// se puede llamar aqui la funcion interna... funcionDentroDeOtra();
57+
}
58+
59+
// Usar algún ejemplo de funciones ya creadas en el lenguaje...
60+
61+
function decirHola() {
62+
console.log('Hola!! Mensaje enviado después de 1 segundo!!');
63+
}
64+
65+
setTimeout(decirHola, 1000); // después de 1 segundo se enviará por consola "Hola
66+
67+
// Varial local y global...
68+
69+
let global = 'Esto es una variable GLOBAL';
70+
71+
function variableLocal() {
72+
let local = 'Esto es una variable LOCAL';
73+
console.log(local);
74+
console.log(global);
75+
}
76+
variableLocal();
77+
78+
// DIFICULTAD EXTRA:
79+
80+
81+
function dif_Extra(str1, str2) {
82+
let cont = 0;
83+
84+
for (let i = 1; i <= 100; i++) {
85+
86+
if (i % 3 === 0 && i % 5 === 0) {
87+
console.log(str1 + str2);
88+
89+
} else if (i % 3 === 0) {
90+
console.log(str1);
91+
92+
} else if (i % 5 === 0) {
93+
console.log(str2);
94+
} else {
95+
console.log('Número: ' + i);
96+
cont++;
97+
}
98+
}
99+
console.log('Se imprimió ' + cont + ' veces un número');
100+
return cont;
101+
}
102+
dif_Extra('cadena1', 'cadena2');

0 commit comments

Comments
 (0)