/*Desafíos:
1. Crea una lista vacía llamada "listaGenerica".
2. Crea una lista de lenguajes de programación llamada "lenguagesDeProgramacion con los siguientes elementos: 'JavaScript', 'C', 'C++', 'Kotlin' y 'Python'.
3. Agrega a la lista "lenguagesDeProgramacion los siguientes elementos: 'Java', 'Ruby' y 'GoLang'.
4.Crea una función que muestre en la consola todos los elementos de la lista "lenguagesDeProgramacion.
5. Crea una función que muestre en la consola todos los elementos de la lista "lenguagesDeProgramacion en orden inverso.
6. Crea una función que calcule el promedio de los elementos en una lista de números.
7. Crea una función que muestre en la consola el número más grande y el número más pequeño en una lista.
8. Crea una función que devuelva la suma de todos los elementos en una lista.
9. Crea una función que devuelva la posición en la lista donde se encuentra un elemento pasado como parámetro, o -1 si no existe en la lista.
10. Crea una función que reciba dos listas de números del mismo tamaño y devuelva una nueva lista con la suma de los elementos uno a uno.
11. Crea una función que reciba una lista de números y devuelva una nueva lista con el cuadrado de cada número.
*/
//1. Crear lista vacia:
let listaGenerica = [];
//2. Lista de Lenguajes:
let lenguagesDeProgramacion = ["JavaScript", "C", "C++", "Kotlin", "Python"];
console.log(lenguagesDeProgramacion);
//3. Agregar elementos a la lista:
lenguagesDeProgramacion.push("Java", "Rubi", "GoLang");
console.log(lenguagesDeProgramacion);
mostrarLista(lenguagesDeProgramacion);
mostrarListaInvertida(lenguagesDeProgramacion);
//4. Función para mostrar los elementos de la lista
function mostrarLista(unaLista){
for (let i = 0; i < unaLista.length; i++){
console.log(unaLista[i]);
}
}
//5. Funcion para mostrar lista invertida
function mostrarListaInvertida(unaLista){
for (let i = unaLista.length - 1 ; i >= 0; i--){
console.log(unaLista[i]);
}
}
//6. Funcion promedio de una lista de números.
let listaNumeros = [5,15,0,66];
console.log(calcPromedioLista(listaNumeros));
function sumaElementosLista(unaLista){
let suma = 0;
for (let i = 0; i < unaLista.length; i++){
suma = suma + unaLista[i];
}
return suma;
}
function calcPromedioLista(unaLista){
return sumaElementosLista(unaLista) / unaLista.length;
}
// 7. Funcion para mostrar el numero mas grande y el mas chico de una lista.
mostrarMayorYMenor(listaNumeros);
function buscarMayor(unaLista){
let mayor = 0;
for(let i = 0; i < unaLista.length; i ++){
if (unaLista[i] > mayor){
mayor = unaLista[i];
}
}
return mayor;
}
function buscarMenor(unaLista){
let menor = 99999999999;
for(let i = 0; i < unaLista.length; i ++){
if (unaLista[i] < menor){
menor = unaLista[i];
}
}
return menor;
}
function mostrarMayorYMenor(unaLista){
console.log(`El número mayor de esta lista es ${buscarMayor(unaLista)}`);
console.log(`El número menor de esta lista es ${buscarMenor(unaLista)}`);
}
//8. La suma de todos los elementos de una lista
console.log(sumaElementosLista(listaNumeros));
//9. Buscar por elemento en Lista
function buscarElemento(unaLista, unElemento){
return unaLista.indexOf(unElemento);
}
let elemento = 15;
console.log(buscarElemento(listaNumeros, elemento));
//10. Recibir dos listas del mismo tamaño y devolver otra con la suma de los elementos
let lista1 = [5, 16, 20];
let lista2 = [22, 4, 18, 5];
let lista3 = [];
lista3 = sumaElementosListas(lista1, lista2);
console.log(lista3);
function sumaElementosListas(unaLista, otraLista){
let suma = [];
if (unaLista.length == otraLista.length){
for (let i = 0; i < unaLista.length; i++){
suma.push( unaLista[i] + otraLista[i]);
}
} else {
console.log('Las listas no tienen el mismo tamaño');
return [];
}
return suma;
}
//11. Cuadrado de cada elemento de una lista
console.log(calcCuadradoDeLista(listaNumeros));
function calcCuadradoDeLista(unaLista){
let listaAlCuadrado = [];
for(let i = 0; i < unaLista.length; i ++){
listaAlCuadrado.push(unaLista[i] * unaLista[i]);
}
return listaAlCuadrado;
}