forked from marquez.juan/clase-7-arrays-funciones-objetos
Compare commits
8 Commits
8b7e397900
...
ejercicios
| Author | SHA1 | Date | |
|---|---|---|---|
| 434bba0209 | |||
| 4b22a16497 | |||
| 83ef9de8ab | |||
| f7abae7acf | |||
| 7581b554d4 | |||
| 03b006db99 | |||
| dc2ba288fb | |||
| 8c799db990 |
126
ejercicios.js
126
ejercicios.js
@@ -8,7 +8,12 @@ console.log("Archivo vinculado correctamente.");
|
||||
luego `map` para elevarlos al cuadrado.
|
||||
*/
|
||||
const numeros = [1, 2, 3, 4, 5, 6, 7, 8];
|
||||
// Resultado esperado: [4, 16, 36, 64]
|
||||
|
||||
const resultado = numeros
|
||||
.filter(num => num % 2 === 0)
|
||||
.map(num => num * num);
|
||||
|
||||
console.log(resultado);
|
||||
|
||||
|
||||
|
||||
@@ -17,13 +22,19 @@ const numeros = [1, 2, 3, 4, 5, 6, 7, 8];
|
||||
2. Dado el siguiente array de productos, obtener los nombres de todos los
|
||||
productos que cuestan menos de $1000.
|
||||
*/
|
||||
|
||||
const productos = [
|
||||
{ nombre: "Teclado", precio: 800 },
|
||||
{ nombre: "Monitor", precio: 3500 },
|
||||
{ nombre: "Mouse", precio: 600 },
|
||||
{ nombre: "Auriculares", precio: 1200 }
|
||||
{ nombre: "Teclado", precio: 800 },
|
||||
{ nombre: "Monitor", precio: 3500 },
|
||||
{ nombre: "Mouse", precio: 600 },
|
||||
{ nombre: "Auriculares", precio: 1200 }
|
||||
];
|
||||
|
||||
const baratos = productos
|
||||
.filter(p => p.precio < 1000)
|
||||
.map(p => p.nombre);
|
||||
|
||||
console.log(baratos);
|
||||
|
||||
// Resultado esperado: ["Teclado", "Mouse"]
|
||||
// Pista: se puede resolver encadenando `filter` y `map`.
|
||||
|
||||
@@ -35,19 +46,43 @@ const productos = [
|
||||
`"Ana tiene 25 años y vive en Rosario."` Usar destructuring en los
|
||||
parámetros de la función.
|
||||
*/
|
||||
function describir({ nombre, edad, ciudad }) {
|
||||
return `${nombre} tiene ${edad} años y vive en ${ciudad}.`;
|
||||
}
|
||||
|
||||
console.log(
|
||||
describir({
|
||||
nombre: "Ana",
|
||||
edad: 25,
|
||||
ciudad: "Rosario"
|
||||
})
|
||||
);
|
||||
|
||||
/*
|
||||
4. Dado el siguiente array de estudiantes, calcular el promedio general de notas
|
||||
usando `map` para extraer las notas y luego un loop para sumarlas.
|
||||
*/
|
||||
|
||||
const estudiantes = [
|
||||
{ nombre: "Ana", nota: 88 },
|
||||
{ nombre: "Luis", nota: 72 },
|
||||
{ nombre: "Marta", nota: 95 },
|
||||
{ nombre: "Carlos", nota: 60 }
|
||||
{ nombre: "Ana", nota: 88 },
|
||||
{ nombre: "Luis", nota: 72 },
|
||||
{ nombre: "Marta", nota: 95 },
|
||||
{ nombre: "Carlos", nota: 60 }
|
||||
];
|
||||
|
||||
// sacar notas
|
||||
const notas = estudiantes.map(e => e.nota);
|
||||
|
||||
// sumar notas
|
||||
let suma = 0;
|
||||
|
||||
for (let nota of notas) {
|
||||
suma += nota;
|
||||
}
|
||||
|
||||
// promedio
|
||||
const promedio = suma / notas.length;
|
||||
|
||||
console.log(promedio);
|
||||
// Resultado esperado: 78.75
|
||||
|
||||
/*
|
||||
@@ -55,10 +90,28 @@ const estudiantes = [
|
||||
en consola un mensaje diferente según si se encontró o no.
|
||||
*/
|
||||
const usuarios = [
|
||||
{ nombre: "Ana", activa: true },
|
||||
{ nombre: "Luis", activa: false },
|
||||
{ nombre: "Marta", activa: true }
|
||||
{ nombre: "Ana", activa: true },
|
||||
{ nombre: "Luis", activa: false },
|
||||
{ nombre: "Marta", activa: true }
|
||||
];
|
||||
|
||||
// buscar Luis
|
||||
const usuario = usuarios.find(u => u.nombre === "Luis");
|
||||
|
||||
if (usuario) {
|
||||
console.log(usuario);
|
||||
} else {
|
||||
console.log("Usuario no encontrado");
|
||||
}
|
||||
|
||||
// buscar Pedro
|
||||
const usuario2 = usuarios.find(u => u.nombre === "Pedro");
|
||||
|
||||
if (usuario2) {
|
||||
console.log(usuario2);
|
||||
} else {
|
||||
console.log("Usuario no encontrado");
|
||||
}
|
||||
// Buscar "Luis" → mostrar sus datos
|
||||
// Buscar "Pedro" → mostrar "Usuario no encontrado"
|
||||
|
||||
@@ -66,10 +119,13 @@ const usuarios = [
|
||||
6. Dado el siguiente array, construir un nuevo array que contenga solo las
|
||||
palabras con más de 4 letras, convertidas a mayúsculas.
|
||||
*/
|
||||
|
||||
const palabras = ["sol", "tormenta", "mar", "lluvia", "río", "arcoíris"];
|
||||
// Resultado esperado: ["TORMENTA", "LLUVIA", "ARCOÍRIS"]
|
||||
|
||||
const resultadoPalabras = palabras
|
||||
.filter(p => p.length > 4)
|
||||
.map(p => p.toUpperCase());
|
||||
|
||||
console.log(resultadoPalabras);
|
||||
// Pistas: `palabra.length` da la cantidad de letras. `palabra.toUpperCase()`
|
||||
// convierte a mayúsculas.
|
||||
|
||||
@@ -78,25 +134,37 @@ const palabras = ["sol", "tormenta", "mar", "lluvia", "río", "arcoíris"];
|
||||
`{ nombre, aprobado }` y retorne un objeto con dos propiedades: `aprobados`
|
||||
y `desaprobados`, cada una con un array de nombres.
|
||||
*/
|
||||
|
||||
const resultados = [
|
||||
{ nombre: "Ana", aprobado: true },
|
||||
{ nombre: "Luis", aprobado: false },
|
||||
{ nombre: "Marta", aprobado: true },
|
||||
{ nombre: "Carlos", aprobado: false }
|
||||
{ nombre: "Ana", aprobado: true },
|
||||
{ nombre: "Luis", aprobado: false },
|
||||
{ nombre: "Marta", aprobado: true },
|
||||
{ nombre: "Carlos", aprobado: false }
|
||||
];
|
||||
|
||||
function agrupar(arr) {
|
||||
let aprobados = [];
|
||||
let desaprobados = [];
|
||||
|
||||
for (let persona of arr) {
|
||||
if (persona.aprobado) {
|
||||
aprobados.push(persona.nombre);
|
||||
} else {
|
||||
desaprobados.push(persona.nombre);
|
||||
}
|
||||
}
|
||||
|
||||
return {
|
||||
aprobados,
|
||||
desaprobados
|
||||
};
|
||||
}
|
||||
|
||||
console.log(agrupar(resultados));
|
||||
|
||||
// Resultado esperado:
|
||||
// {
|
||||
// aprobados: ["Ana", "Marta"],
|
||||
// desaprobados: ["Luis", "Carlos"]
|
||||
// }
|
||||
|
||||
/*
|
||||
8. *(Opcional - closures)* Escribir una función `crearSumador` que reciba un
|
||||
número `base` y retorne una función que, al llamarla con otro número,
|
||||
retorne la suma de ambos.
|
||||
|
||||
const sumarDiez = crearSumador(10);
|
||||
console.log(sumarDiez(5)); // 15
|
||||
console.log(sumarDiez(20)); // 30
|
||||
*/
|
||||
|
||||
@@ -10,6 +10,6 @@
|
||||
<p>Vincular el archivo ejercicios.js a este archivo. Luego, resolver ahí
|
||||
los ejercicios.</p>
|
||||
|
||||
|
||||
<script src="ejercicios.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user