Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Desafio: Hora de Practicar

//Desafio #5 de la 1 a la 5 Function and Array

let listaVacia = [];
let listaDeProgramacion = ['JavaScript', 'C', 'C++', 'Kotlin', 'Python'];
listaDeProgramacion.push('Java', 'Ruby', 'GoLang');//Para agregar datos al array

function mostrarLista(){
console.log(listaDeProgramacion);
}

function listaInvertida(){
listaDeProgramacion.reverse();//Orden Inverso
console.log(listaDeProgramacion)
}
mostrarLista();
listaInvertida();

//Desafio #5 de la 6 a la 11 Function and Array
let numeros = [10, 20, 30, 40];
let promedio = calcularPromedio(numeros);

function calcularPromedio(lista) {
if (lista.length === 0) {
return 0; // Evitar división por cero
}

let suma = 0;
for (let i = 0; i < lista.length; i++) {
    suma += lista[i];
}

return suma / lista.length;

}
console.log("Promedio:", promedio); // Promedio: 25

//Función que muestra el número más grande y el más pequeño de una lista
function mostrarMayorYMenor(lista) {
if (lista.length === 0) {
console.log("La lista está vacía"); // Evita errores con listas vacías
return;
}
let mayor = Math.max(...lista); // Math.max(...array) obtiene el valor máximo
let menor = Math.min(...lista); // Math.min(...array) obtiene el valor mínimo
console.log("Número más grande:", mayor);
console.log("Número más pequeño:", menor);
}
mostrarMayorYMenor([3, 7, 1, 9, 4]);

//Función que devuelve la suma de todos los elementos en una lista
function sumarLista(lista) {
// .reduce() recorre la lista acumulando la suma
return lista.reduce((acum, num) => acum + num, 0);
}

// Ejemplo de uso
console.log("Suma de la lista:", sumarLista([3, 7, 1, 9, 4])); // 24

//Función que devuelve la posición de un elemento o -1 si no existe
function encontrarPosicion(lista, elemento) {
// .indexOf() devuelve el índice o -1 si no está
return lista.indexOf(elemento);
}
console.log("Posición del número 9:", encontrarPosicion([3, 7, 1, 9, 4], 9)); // 3
console.log("Posición del número 5:", encontrarPosicion([3, 7, 1, 9, 4], 5)); // -1

//Función que recibe dos listas del mismo tamaño y devuelve una lista con la suma elemento a elemento
function sumarListas(lista1, lista2) {
if (lista1.length !== lista2.length) {
throw new Error("Las listas deben tener el mismo tamaño"); // Control de errores
}
// .map() recorre ambas listas sumando elemento a elemento
return lista1.map((num, i) => num + lista2[i]);
}

console.log("Suma elemento a elemento:", sumarListas([1, 2, 3], [4, 5, 6])); // [5, 7, 9]

//Función que devuelve una nueva lista con el cuadrado de cada número
function cuadrados(lista) {
// .map() transforma cada elemento al cuadrado
return lista.map(num => num ** 2);
}

console.log("Cuadrados:", cuadrados([2, 3, 4])); // [4, 9, 16]

1 respuesta

¡Hola Farid!

Parece que has hecho un gran trabajo con los desafíos del curso de Lógica de Programación. Has cubierto todos los puntos que se pedían, desde la creación de listas y funciones hasta la manipulación de arrays. Aquí tienes un resumen de lo que has hecho correctamente:

  1. Creaste una lista vacía llamada listaVacia.
  2. Creaste una lista de lenguajes de programación y añadiste más elementos a ella.
  3. Implementaste funciones para mostrar la lista y su versión invertida.
  4. Calculaste el promedio de una lista de números.
  5. Mostraste el número más grande y el más pequeño de una lista.
  6. Sumaste todos los elementos de una lista.
  7. Encontraste la posición de un elemento en una lista.
  8. Sumaste listas elemento a elemento.
  9. Generaste una nueva lista con el cuadrado de cada número.

Tu código parece estar en línea con los desafíos propuestos. Si estás buscando mejorar o añadir algo más, podrías considerar manejar casos especiales, como listas vacías, de una manera más detallada o añadir comentarios para hacer el código más legible.

¡Espero que esto te haya ayudado y que sigas disfrutando de tus estudios en programación!