clase 7 #30

Open
durso.bruno wants to merge 1 commits from durso.bruno/clase-7-arrays-funciones-objetos:clase-7-arrays-funciones-objetos into main
2 changed files with 95 additions and 3 deletions

View File

@@ -10,8 +10,15 @@ console.log("Archivo vinculado correctamente.");
const numeros = [1, 2, 3, 4, 5, 6, 7, 8];
// Resultado esperado: [4, 16, 36, 64]
const pares = numeros.filter(numero =>
numero % 2 === 0
);
const cuadrados = pares.map(numero =>
numero * numero
);
console.log(cuadrados);
/*
2. Dado el siguiente array de productos, obtener los nombres de todos los
@@ -24,11 +31,23 @@ const productos = [
{ nombre: "Mouse", precio: 600 },
{ nombre: "Auriculares", precio: 1200 }
];
const productos = [
{ nombre: "Teclado", precio: 800 },
{ nombre: "Monitor", precio: 3500 },
{ nombre: "Mouse", precio: 600 },
{ nombre: "Auriculares", precio: 1200 }
];
const baratos = productos
.filter(producto => producto.precio < 1000)
.map(producto => producto.nombre);
console.log(baratos);
// Resultado esperado: ["Teclado", "Mouse"]
// Pista: se puede resolver encadenando `filter` y `map`.
/*
3. Escribir una función `describir` que reciba un objeto persona con las
propiedades `nombre`, `edad` y `ciudad`, y retorne un string del estilo:
@@ -36,6 +55,18 @@ const productos = [
parámetros de la función.
*/
function describir ({nombre, edad, ciudad}) {
console.log (`${nombre} tiene ${edad} años y vive en ${ciudad}.`);
}
describir({ nombre: "Ana", edad: 25, ciudad: "Rosario" });
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
@@ -48,6 +79,23 @@ const estudiantes = [
{ nombre: "Marta", nota: 95 },
{ nombre: "Carlos", nota: 60 }
];
const nota = estudiantes.map(u => u.nota);
console.log(nota);
function promedio(nota) {
let suma = 0;
for (let i = 0; i < nota.length; i++) {
suma += nota[i];
}
return suma / nota.length;
}
console.log("promedio:", promedio(nota));
// Resultado esperado: 78.75
/*
@@ -58,7 +106,25 @@ const usuarios = [
{ nombre: "Ana", activa: true },
{ nombre: "Luis", activa: false },
{ nombre: "Marta", activa: true }
];
const usuarioEncontrado =
usuarios.find(usuario =>
usuario.nombre === "Pedro"
);
if (usuarioEncontrado) {
console.log("Usuario encontrado:");
console.log(usuarioEncontrado);
} else {
console.log("Usuario no encontrado");
}
// Buscar "Luis" → mostrar sus datos
// Buscar "Pedro" → mostrar "Usuario no encontrado"
@@ -68,6 +134,13 @@ const usuarios = [
*/
const palabras = ["sol", "tormenta", "mar", "lluvia", "río", "arcoíris"];
const resultado = palabras
.filter(palabra => palabra.length > 4)
.map(palabra => palabra.toUpperCase());
console.log(resultado);
// Resultado esperado: ["TORMENTA", "LLUVIA", "ARCOÍRIS"]
// Pistas: `palabra.length` da la cantidad de letras. `palabra.toUpperCase()`
@@ -85,6 +158,24 @@ const resultados = [
{ nombre: "Carlos", aprobado: false }
];
function agrupar(array) {
const aprobados = array
.filter(persona => persona.aprobado)
.map(persona => persona.nombre);
const desaprobados = array
.filter(persona => !persona.aprobado)
.map(persona => persona.nombre);
return {
aprobados,
desaprobados
};
}
console.log(agrupar(resultados));
// Resultado esperado:
// {
// aprobados: ["Ana", "Marta"],

View File

@@ -10,6 +10,7 @@
<p>Vincular el archivo ejercicios.js a este archivo. Luego, resolver ahí
los ejercicios.</p>
<script src="ejercicios.js"></script>
</body>
</html>