Arreglos, listas, diccionarios y conjuntos
Arreglos
Ya hemos utilizado variables que solo almacenan un dato, pero en ciertos casos esto puede no ser suficiente. Muchos lenguajes de programación proveen variables que permiten almacenar varios datos del mismo tipo simultáneamente; estas variables reciben el nombre de arreglos.
Los arreglos son estructuras de datos que almacenan información que está ciertamente relacionada. En programación hay varios tipos de arreglos: unidimensionales (vectores), bidimensionales (matrices) y multidimensionales.
Imagine que es necesario almacenar las estaturas de 50 personas, las edades de los 30 estudiantes de un grupo o el peso de 40 pacientes de una clínica.
Una solución para estos problemas sería declarar 50 variables para almacenar las estaturas, 30 variables para las edades y 40 para los pesos, pero esto es totalmente inviable.
Para este tipo de problemas, cobran importancia los arreglos, ya que permiten almacenar muchos valores o datos en una misma ubicación en la memoria del computador.
¿En qué otros casos creen que pueden ser útiles
los arreglos?
Arreglos o vector
Un vector o arreglo unidimensional es un conjunto finito de celdas que almacenan datos del mismo tipo. Imagine un arreglo unidimensional como una fila en la que cada celda corresponde a un espacio de memoria que almacena un dato.
Cada celda o espacio de memoria se identifica con un número llamado índice.
Video
Arreglos en programación
Fuente: Fernando Herrera (2018)
El primer elemento en cualquier arreglo tiene el índice cero, y algunas veces se le denomina elemento cero. Por lo tanto, los elementos del arreglo c son c[0], c[1], c[2], y así sucesivamente.
El mayor índice en el arreglo c es 6: uno menos que 7, el número de elementos
en el arreglo. Un índice debe ser un valor entero.
Los nombres de los arreglos siguen las mismas convenciones que los demás nombres de variables.
Declaración e inicialización de arreglos
En muchos lenguajes de programación se suelen usar los corchetes para indicar que una variable representa un arreglo. En Python simplemente se declara una variable y se le asignan los valores dentro de corchetes.
Por ejemplo, para declarar un arreglo cuyo nombre es “edades” y que contenga cinco valores sería:
edades = [12, 45, 23, 71, 25]
En este caso se le asignan todos los valores al arreglo directamente.
Ejercicios
Ejercicio 1
Escriba una función que sume todos los elementos de un arreglo de tipo int.
Solución:
Ejercicio 2
Escribir una función que retorne el valor más grande que esté contenido dentro de un arreglo de números.
Solución:
Ejercicio 3
Escriba una función donde se declare un arreglo de tipo int de tamaño n e inicialícelo con valores pares 0, 2, 4, etc. Use un ciclo.
Solución:
Ejercicio 4
Escribir una función donde se declare un arreglo que va a almacenar las potencias de 2 desde un valor mínimo a un valor máximo, ambos pedidos por teclado.
Si por ejemplo, el valor mínimo es 3 y máximo es 5 entonces el arreglo debe contener:
● 2**3 = 8 en la posición 0
● 2**4 = 16 en la posición 1
● 2**5 = 32 en la posición 2
Para este ejemplo el arreglo debe ser de tamaño 3.
Solución:
Ejercicio 5
Escribir una función que lea dos arreglos de cinco elementos y retorne un tercer arreglo con la suma de los elementos, posición a posición.
Ejemplo:
arreglo1 = [2, 3, 4, 5, 5]
arreglo2 = [7, 8, 9, 2, 3]
Entonces para sumar ambos arreglos se debe sumar posición a posición, es importante indicar que ambos arreglos deben tener el mismo tamaño, la salida debe ser:
respuesta = [9, 11, 13, 7, 8]
Solución:
Ejercicio 6
Escribir una función que le pida al usuario el tamaño del arreglo y los valores que se deseen guardar, luego imprímalo por consola.
Ejercicios
Obtener el promedio de los valores almacenados en un arreglo de tipo decimal.
Sumar únicamente aquellos números primos contenidos en un arreglo de enteros.
Dado un arreglo de nombres de personas, retorne la cantidad de nombres que comiencen con una vocal.
Dado un arreglo de números decimales, retorne la cantidad de números que son mayores a un valor que se pasa por parámetro.
Retorne la cadena de caracteres más larga que esté contenida en un arreglo.
Programe una función que invierta un arreglo de números decimales.
Contar el número de veces que se repite cada nombre dentro de un arreglo de string.