Ejercicios básicos con Arrays
Ejercicio 2: Suma de los valores de un array
Crea un array de 5 números y usa tres tipos de bucles para calcular la suma: for, for range y while.
Solución
# for
numeros = [3, 7, 2, 8, 5]
suma = 0
for elemento in numeros:
suma = suma + elemento
print("La suma de los números con for es:", suma)
# for i in range
numeros = [3, 7, 2, 8, 5]
suma2 = 0
for i in range(len(numeros)):
suma2 += numeros[i]
print("La suma de for in range es:", suma2)
# while
suma3 = 0
i = 0
while i < len(numeros):
suma3 = suma3 + numeros[i]
i = i + 1
print("La suma con while es:", suma3)
Ejercicio 3: ¿qué está pasando y cómo corregirlo?
código dado:
a = [1, 2, 3, 4]
for i in range(3):
print(a[i])
Explicación
El programa solo muestra los primeros 3 elementos porqué range(3) genera 0, 1 y 2.
Para recorrer todo el array, debe usarse len(a).
Corrección:
for i in range(len(a)):
print(a[i])
Ejercicio 4: Aumentar sueldos un 10%
Dada una tabla de sueldos como la de la imagen, aumentar un 10% cada valor y actualizar el array.
Imagen del enunciado
(Inserta aqué la imagen del ejercicio 👇)
Solución
sueldos = [1800, 1200, 2000, 1200, 900]
for i in range(len(sueldos)):
sueldos[i] = sueldos[i] * 1.10
print(sueldos)
Ejercicio 5: Pedir 5 números decimales y mostrarlos
Solución
# Pedir al usuario 5 números decimales y mostrarlos en el mismo orden
numeros = [] # Lista vacía
for i in range(5):
numero = float(input(f"Introduce el número decimal {i+1}: "))
numeros.append(numero)
print("\nLos números introducidos son:")
for n in numeros:
print(n)
Ejercicio 6: Mostrar números en orden inverso
Solicitar cuántos números qué introducir el usuario, guardarlos y mostrarlos al revés.
Solución
# Solicitar cuántos números desea introducir
cantidad = int(input("¿Cuántos números enteros deseas introducir?: "))
numeros = []
# Rellenar lista
for i in range(cantidad):
numero = int(input("Introduce el número entero " + str(i + 1) + ": "))
numeros.append(numero)
# 1. Con reversed()
print("\nLos números en orden inverso son:")
for n in reversed(numeros):
print(n)
# 2. Sin reversed()
print("\nLos números en orden inverso son:")
for i in range(len(numeros) - 1, -1, -1):
print(numeros[i])
# 3. Con while
print("\nLos números en orden inverso son:")
i = len(numeros) - 1
while i >= 0:
print(numeros[i])
i -= 1
Ejercicio 7: Función maximo(t)
Solución
# Diseñar una función qué devuelva el valor máximo de una lista
def maximo(t):
maximo_valor = t[0]
for elemento in t[1:]:
if elemento > maximo_valor:
maximo_valor = elemento
return maximo_valor
# Pedir números al usuario
cantidad = int(input("¿Cuántos números enteros deseas introducir?: "))
numeros = []
for i in range(cantidad):
numero = int(input("Introduce el número entero " + str(i + 1) + ": "))
numeros.append(numero)
print("\nEl valor máximo de la lista es:", maximo(numeros))