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

Desafío: hora de practicar

console.log("Saludo");
let listaGenerica = [];
console.log("Lista Generica es: ");
console.log(listaGenerica);
let listaDeProgramacion = ["JavaScript", "C", "C++", "Kotlin", "Python"];
listaDeProgramacion.push("Java","Ruby","GoLang");

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

function invertirLista () {
for(let i=listaDeProgramacion.length-1; i>0; i--) {
console.log (listaDeProgramacion[i]);
}
}
invertirLista();

function funcionesLista () {
let N = Math.floor(Math.random()*10)+1;
const listaNumero = [];
for(let j=0; j<N;j++) {
listaNumero.push(Math.floor(Math.random()*100)+1);
}
console.log(listaNumero);
let suma = 0;
for(let k=0; k<N; k++) {
suma += listaNumero[k];
}
console.log("Promedio es: "+suma/N);
let listaMayor = listaNumero.sort((a, b) => b - a);
let maxi = listaMayor[0];
console.log("Maximo valor: " + maxi);
let listaMenor = listaNumero.sort((a, b) => a - b);
let min = listaMenor[0];
console.log("Minimo valor: " + min);
console.log("Suma de lista: "+suma);
let P = Math.floor(Math.random()*100)+1;
console.log("Parametro P: "+P);
for(l=0;l<N;l++) {
if(P === listaNumero[l]) {
console.log("Posicion de parametro: " + P + " es "+l);
} else {
console.log(-1);
}
}
}
funcionesLista();

function sumaListas () {
let M = Math.floor(Math.random()*10)+1;
//lista 1
const lista1 = [];
for(let m=0; m<M;m++) {
lista1.push(Math.floor(Math.random()*100)+1);
}
console.log("Lista 1:");
console.log(lista1);
//lista 2
const lista2 = [];
for(let n=0; n<M;n++) {
lista2.push(Math.floor(Math.random()*100)+1);
}
console.log("Lista 2:");
console.log(lista2);

//Suma listas:
const listaSUM = [];
for(i2 = 0; i2<M; i2++) {
    listaSUM.push(lista1[i2] + lista2[i2]);
}
console.log("Suma de lista 1 + lista 2:")
console.log(listaSUM);

//Lista de cuadrados:
const listaQUAD = [];
for(i3=0; i3<M;i3++) {
    listaQUAD.push(lista1[i3]*lista1[i3]);
}
console.log("Suma de cuadrados de L1:")
console.log(listaQUAD);

}
sumaListas();

1 respuesta

Hola Jhon, espero que estés bien

¡Espero que estés disfrutando del curso! He revisado tu código y parece que has abordado varios de los desafíos planteados en la actividad. Aquí hay algunos comentarios y sugerencias que podrían ayudarte a mejorar o corregir tu implementación:

  1. Función invertirLista: En tu bucle for, el índice debería comenzar en listaDeProgramacion.length - 1 y debe ir hasta i >= 0 para incluir el primer elemento de la lista. Actualmente, estás omitiendo el primer elemento porque el bucle se detiene en i > 0.

    function invertirLista () {
        for(let i = listaDeProgramacion.length - 1; i >= 0; i--) {
            console.log(listaDeProgramacion[i]);
        }
    }
    
  2. Función funcionesLista: Cuando buscas el valor máximo y mínimo, estás utilizando sort para ordenar la lista. Esto modifica la lista original. Una forma de evitar esto es usar el operador de propagación para crear una copia de la lista antes de ordenarla:

    let listaMayor = [...listaNumero].sort((a, b) => b - a);
    let maxi = listaMayor[0];
    console.log("Maximo valor: " + maxi);
    
    let listaMenor = [...listaNumero].sort((a, b) => a - b);
    let min = listaMenor[0];
    console.log("Minimo valor: " + min);
    
  3. Búsqueda de P en funcionesLista: Actualmente, estás imprimiendo -1 en cada iteración donde P no coincide con un elemento de la lista. En lugar de eso, podrías imprimir -1 solo si P no se encuentra en ninguna posición después de completar el bucle.

    let found = false;
    for(let l = 0; l < N; l++) {
        if(P === listaNumero[l]) {
            console.log("Posicion de parametro: " + P + " es " + l);
            found = true;
            break;
        }
    }
    if (!found) {
        console.log(-1);
    }
    

Estas correcciones deberían ayudarte a cumplir con los requisitos de los desafíos de manera más precisa. Espero que encuentres estas sugerencias útiles.

¡Espero haber ayudado y buenos estudios!