Skip to content

Commit 66ba19e

Browse files
Merge branch 'main' of github.com:mouredev/roadmap-retos-programacion into JesusAEE
2 parents 05c5a1f + 13a16be commit 66ba19e

File tree

42 files changed

+4422
-966
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+4422
-966
lines changed
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
package com.example.headfirstjava;
2+
3+
import org.springframework.boot.SpringApplication;
4+
5+
public class Natalinacn {
6+
7+
public static void main(String[] args) {
8+
SpringApplication.run(HeadFirstjavaApplication.class, args);
9+
/*COMENTARIO MULTILINEA
10+
11+
EJERCICIO:
12+
* - Crea un comentario en el código y coloca la URL del sitio web oficial del
13+
* lenguaje de programación que has seleccionado.
14+
* - Representa las diferentes sintaxis que existen de crear comentarios
15+
* en el lenguaje (en una línea, varias...).
16+
* - Crea una variable (y una constante si el lenguaje lo soporta).
17+
* - Crea variables representando todos los tipos de datos primitivos
18+
* del lenguaje (cadenas de texto, enteros, booleanos...).
19+
* - Imprime por terminal el texto: "¡Hola, [y el nombre de tu lenguaje]!"*/
20+
21+
// COMENTARIO DE UNA LINEA
22+
// Información sobre descargas, documentación, tutoriales y recursos relacionados con Java:
23+
// https://www.java.com/en/
24+
// Información técnica y recursos para desarrolladores: https://www.oracle.com/java/
25+
26+
/**
27+
* COMENTARIO DE DOCUMENTACIÓN (javadoc)
28+
* @author natalin
29+
* @version 1.0
30+
*/
31+
32+
//VARIABLES Y CONSTANTES
33+
String variable = "Variable";
34+
final String MI_CONSTANTE = "Constante";
35+
36+
37+
//TIPOS DE DATOS PRIMITIVOS
38+
39+
byte tipoByte = 100; //Tamaño: 8 bits. Rango -128 a 127
40+
short tipoShort = 10000; //Tamaño: 16 bits. Rango: -32.768 a 32.767
41+
int tipoInt = 100000; //Tamaño: 32 bits. Rango: -2147483648 a 2147483647
42+
long tipoLong = 100000L; //Tamaño: 34 bits. Rango: 2^63 a 2^63-1
43+
float tipoFloat = 234.5f; //Tamaño: 32 bits. Rango: aproximadamente ±3.40282347E+38F (6-7 dígitos decimales). Float: Se usa cuando el ahorro de memoria es importante y la precisión de 6-7 dígitos decimales es suficiente.
44+
double tipoDouble = 123.4; //Tamaño: 64 bits. Rango: aproximadamente ±1.79769313486231570E+308 (15-16 dígitos decimales). Double: Se usa para la mayoría de los cálculos de punto flotante debido a su mayor precisión y rango.
45+
boolean tipoBoolean = true; // Tamaño: 1 bit (teóricamente). Valores posibles: true o false
46+
char tipoChar = 'A'; // Tamaño: 16 bits. Rango: '\u0000' (o 0) a '\uffff' (o 65,535)
47+
48+
49+
//Imprimir
50+
String lenguaje = "Java";
51+
52+
System.out.println("¡Hola, " + lenguaje + "!");
53+
}
54+
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
// this comment is a single line comment
2+
3+
/*
4+
this is a multi-line comment
5+
*/
6+
7+
/* read docummentation js in: https://developer.mozilla.org/en-US/docs/Web/javascript */
8+
9+
var text = "Hello, Javascript!";
10+
var number = 10;
11+
var boolean = true;
12+
13+
console.log(text);
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
# https://python.org
2+
3+
# Comentario en una línea
4+
5+
"""
6+
Esto también es
7+
un comentario
8+
en varias líneas
9+
"""
10+
11+
'''
12+
Esto también es
13+
un comentario
14+
en varias líneas
15+
'''
16+
17+
my_variable = "Mi variable"
18+
my_variable = "Nuevo valor de mi variable"
19+
20+
MY_CONSTANT = "Mi constante" # por convención
21+
22+
my_int = 1
23+
my_float = 1.5
24+
my_bool = True
25+
my_bool = False
26+
my_string = "Mi cadena de texto"
27+
my_other_string = 'Mi otra cadena de texto'
28+
29+
print("¡Hola, Python!")
30+
31+
print(type(my_int))
32+
print(type(my_float))
33+
print(type(my_bool))
34+
print(type(my_string))
Lines changed: 115 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,115 @@
1+
// -- exercise
2+
// Arithmetic operators
3+
let a = 10;
4+
let b = 5;
5+
let sum = a + b;
6+
let difference = a - b;
7+
let product = a * b;
8+
let quotient = a / b;
9+
let remainder = a % b;
10+
11+
console.log("Arithmetic Operators:");
12+
console.log("Sum:", sum);
13+
console.log("Difference:", difference);
14+
console.log("Product:", product);
15+
console.log("Quotient:", quotient);
16+
console.log("Remainder:", remainder);
17+
18+
// Logical operators
19+
let x = true;
20+
let y = false;
21+
let andResult = x && y;
22+
let orResult = x || y;
23+
let notResult = !x;
24+
25+
console.log("\nLogical Operators:");
26+
console.log("AND:", andResult);
27+
console.log("OR:", orResult);
28+
console.log("NOT:", notResult);
29+
30+
// Comparison operators
31+
let num1 = 10;
32+
let num2 = 20;
33+
let isEqual = num1 === num2;
34+
let isNotEqual = num1 !== num2;
35+
let greaterThan = num1 > num2;
36+
let lessThan = num1 < num2;
37+
let greaterThanOrEqual = num1 >= num2;
38+
let lessThanOrEqual = num1 <= num2;
39+
40+
console.log("\nComparison Operators:");
41+
console.log("Is Equal:", isEqual);
42+
console.log("Is Not Equal:", isNotEqual);
43+
console.log("Greater Than:", greaterThan);
44+
console.log("Less Than:", lessThan);
45+
console.log("Greater Than or Equal:", greaterThanOrEqual);
46+
console.log("Less Than or Equal:", lessThanOrEqual);
47+
48+
// Assignment operators
49+
let assignedValue = 30;
50+
assignedValue += 5;
51+
console.log("\nAssignment Operator:");
52+
console.log("Assigned Value:", assignedValue);
53+
54+
// Identity operators
55+
let obj1 = {};
56+
let obj2 = {};
57+
let obj3 = obj1;
58+
let identityCheck1 = obj1 === obj2;
59+
let identityCheck2 = obj1 === obj3;
60+
61+
console.log("\nIdentity Operators:");
62+
console.log("Identity Check 1:", identityCheck1);
63+
console.log("Identity Check 2:", identityCheck2);
64+
65+
// Membership operators
66+
let array = [1, 2, 3];
67+
let isInArray = 2 in array;
68+
69+
console.log("\nMembership Operator:");
70+
console.log("Is 2 in Array?", isInArray);
71+
72+
// Bitwise operators
73+
let bitwiseAnd = 5 & 1;
74+
let bitwiseOr = 5 | 1;
75+
let bitwiseXor = 5 ^ 1;
76+
let bitwiseNot = ~5;
77+
let leftShift = 5 << 1;
78+
let rightShift = 5 >> 1;
79+
let zeroFillRightShift = 5 >>> 1;
80+
81+
console.log("\nBitwise Operators:");
82+
console.log("Bitwise AND:", bitwiseAnd);
83+
console.log("Bitwise OR:", bitwiseOr);
84+
console.log("Bitwise XOR:", bitwiseXor);
85+
console.log("Bitwise NOT:", bitwiseNot);
86+
console.log("Left Shift:", leftShift);
87+
console.log("Right Shift:", rightShift);
88+
console.log("Zero-fill Right Shift:", zeroFillRightShift);
89+
90+
// Conditional structures
91+
let condition = true;
92+
93+
if (condition) {
94+
console.log("Condition is true.");
95+
} else {
96+
console.log("Condition is false.");
97+
}
98+
99+
// ---------------------------------------------
100+
// Iterative structure -- extra challenge
101+
console.log("\nIterative Structure:");
102+
for (let i = 10; i <= 55; i++) {
103+
if (i !== 16 && i % 3 !== 0 && i % 2 === 0) {
104+
console.log(i);
105+
}
106+
}
107+
// ---------------------------------------------
108+
109+
// Exception handling structure
110+
console.log("\nException Handling Structure:");
111+
try {
112+
throw new Error("Example error");
113+
} catch (error) {
114+
console.error(error);
115+
}
Lines changed: 103 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,103 @@
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+
// +++++++++ FUNCIÓN SIN PARÁMETROS NI RETORNO +++++++++
25+
function hello() {
26+
console.log("¡Hola mundo con JavaScript!");
27+
}
28+
29+
hello();
30+
31+
// +++++++++ FUNCIÓN CON PARÁMETROS +++++++++
32+
function addition(firstNumber, secondNumber) {
33+
console.log(firstNumber + secondNumber);
34+
}
35+
36+
addition(13, 20);
37+
38+
// +++++++++ FUNCIÓN CON PARÁMETROS Y RETORNO +++++++++
39+
function checkAge(age, name) {
40+
if (age >= 18) {
41+
return name + " eres mayor de edad."
42+
} else {
43+
return "Eres menor de edad " + name + "."
44+
}
45+
}
46+
47+
console.log(checkAge(17, "Raúl"));
48+
49+
// +++++++++ FUNCIONES ANIDADAS +++++++++
50+
function greet(name, lastName) {
51+
function fullName() {
52+
return name + " " + lastName;
53+
}
54+
55+
console.log('Hello ' + fullName() + "!");
56+
}
57+
58+
greet("Samus", "Aran");
59+
60+
// +++++++++ EJEMPLOS DE FUNCIONES EXISTENTES EN JAVASCRIPT +++++++++
61+
// parseInt() y console.log()
62+
var numberAsAString = "16";
63+
var number = parseInt(numberAsAString, 10);
64+
console.log("Tipo de dato antes de utilizar parseInt: " + typeof numberAsAString);
65+
console.log("Tipo de dato después de utilizar parseInt: " + typeof number);
66+
67+
// +++++++++ VARIABLES GLOBAL Y LOCAL +++++++++
68+
var globalMessage = "The last Metroid is in captivity."
69+
70+
function fullMessage(localMessage) {
71+
var localMessageVariable = localMessage;
72+
console.log(globalMessage + " " + localMessageVariable);
73+
}
74+
75+
fullMessage("The galaxy is at peace...");
76+
console.log("Este mensaje no se mostrará porque localMessageVariable es una variable local: " + localMessageVariable);
77+
78+
// +++++++++ DIFICULTAD EXTRA +++++++++
79+
var auxiliaryCounter = 0;
80+
81+
function series(textOne, textTwo) {
82+
for(var index = 1; index <= 100; index++) {
83+
if (index % 3 === 0 || index % 5 === 0) {
84+
if (index % 3 === 0 && index % 5 === 0) {
85+
console.log(textOne + " y " + textTwo);
86+
87+
} else if (index % 3 === 0) {
88+
console.log(textOne);
89+
90+
} else if (index % 5 === 0) {
91+
console.log(textTwo);
92+
}
93+
} else {
94+
auxiliaryCounter++;
95+
console.log(index);
96+
}
97+
}
98+
99+
return auxiliaryCounter;
100+
}
101+
102+
series("Múltiplo de tres", "Múltiplo de cinco");
103+
console.log("Número de veces que se imprimieron números: " + auxiliaryCounter);
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
/* -- exercise */
2+
const greet = () => console.log("Hello, world!");
3+
4+
greet();
5+
6+
const square = (number) => number * number;
7+
8+
let result = square(5);
9+
console.log("Square of 5:", result);
10+
11+
const outerFunction = () => {
12+
console.log("Outer function is executing.");
13+
const innerFunction = () => console.log("Inner function is executing.");
14+
innerFunction();
15+
};
16+
17+
outerFunction();
18+
19+
let globalVariable = "I'm global";
20+
21+
function localGlobalExample() {
22+
let localVariable = "I'm local";
23+
console.log("Inside function:");
24+
console.log(" - Local variable:", localVariable);
25+
console.log(" - Global variable:", globalVariable);
26+
}
27+
28+
localGlobalExample();
29+
30+
console.log("Outside function - Global variable:", globalVariable);
31+
32+
let randomNumber = Math.random();
33+
console.log("Random number:", randomNumber);
34+
35+
/* -- extrta challenge */
36+
function printNumbersAndCount(text1, text2) {
37+
let count = 0;
38+
39+
for (let i = 1; i <= 100; i++) {
40+
if (i % 3 === 0 && i % 5 === 0) {
41+
console.log(text1 + text2);
42+
count++;
43+
} else if (i % 3 === 0) {
44+
console.log(text1);
45+
count++;
46+
} else if (i % 5 === 0) {
47+
console.log(text2);
48+
count++;
49+
} else console.log(i);
50+
}
51+
52+
return count;
53+
}
54+
55+
let count = printNumbersAndCount("Fizz", "Buzz");
56+
console.log("Number of times text has been printed:", count);

0 commit comments

Comments
 (0)