Documentos de Académico
Documentos de Profesional
Documentos de Cultura
INGENIERÍA MULTIMEDIA
PROGRAMACIÓN 3
TALLER 2 – LISTAS
Ejercicio 1
Realizar un programa que inicialice una lista con 10 valores aleatorios (del 1 al 10) y
posteriormente muestre en pantalla cada elemento de la lista junto con su cuadrado y
su cubo.
import random
listaNumeros = []
listaNumeros. append(random.randint(1,10))
Ejercicio 2
Crea una lista e inicialízala con 5 cadenas de caracteres leídas por teclado. Copia los
elementos de la lista en otra lista, pero en orden inverso, y muestra sus elementos por
la pantalla.
lista1 = []
lista2 = []
lista2 = lista1[::-1]
print(cadena)
Ejercicio 3
Se quiere realizar un programa que lea por teclado las 5 notas obtenidas por un
alumno (comprendidas entre 0 y 10). A continuación, debe mostrar todas las notas, la
nota media, la nota más alta que ha sacado y la menor.
notas = []
while True:
notas.append(nota)
print("Notas: ",end="")
print(nota," ",end="")
print()
Ejercicio 4
Programa que declare una lista y la vaya llenando de números hasta que
introduzcamos un número negativo. Entonces se debe imprimir el vector (sólo los
elementos introducidos).
lista = []
while numero>=0:
lista.append(numero)
print(numero," ",end="")
Ejercicio 5
Hacer un programa que inicialice una lista de números con valores aleatorios (10
valores), y posterior ordene los elementos de menor a mayor.
import random
lista = []
lista.append(random.randint(1,10))
lista.sort()
print(numero," ",end="")
Ejercicio 6
Crea un programa que pida un número al usuario un número de mes (por ejemplo, el
4) y diga cuántos días tiene (por ejemplo, 30) y el nombre del mes. Debes usar listas.
Para simplificarlo vamos a suponer que febrero tiene 28 días.
dias = [31,28,31,30,31,30,31,31,30,31,30,31]
nombreMes =
["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octu
bre","Noviembre","Diciembre"]
while True:
mes = int(input("Introduce un mes (1-12):"))
Ejercicio 7
Programa que declare tres listas ‘lista1’, ‘lista2’ y ‘lista3’ de cinco enteros cada uno,
pida valores para ‘lista1’ y ‘lista2’ y calcule lista3=lista1+lista2.
lista1 = []
lista2 = []
lista3 = []
lista3.append(lista1[listas] + lista2[listas])
print(numero," ",end="")
Ejercicio 8
Queremos guardar los nombres y las edades de los alumnos de un curso. Realiza un
programa que introduzca el nombre y la edad de cada alumno. El proceso de
lectura de datos terminará cuando se introduzca como nombre un asterisco (* ) Al
finalizar se mostrará los siguientes datos:
• Todos los alumnos mayores de edad.
• Los alumnos mayores (los que tienen más edad)
nombres = []
edades = []
while True:
nombre = input("Dime el nombre de un alumno:")
if nombre != "*":
nombres.append(nombre)
edades.append(int(input("Dime su edad:")))
if nombre == "*": break;
edadMax = max(edades)
print("Alumnos mayores")
for nombre,edad in zip(nombres,edades):
if edad == edadMax:
print(nombre)
Ejercicio 9
Queremos guardar la temperatura mínima y máxima de 5 días. Realiza un programa
que de la siguiente información:
• La temperatura media de cada día
• Los días con menos temperatura
• Se lee una temperatura por teclado y se muestran los días cuya temperatura
máxima coincide con ella. si no existe ningún día se muestra un mensaje de
información.
temperaturas = []
for listas in range(1,6):
temperatura = []
temperatura.append(int(input("Día %d. Temperatura máxima:" % listas)))
temperatura.append(int(input("Día %d. Temperatura mínima:" % listas)))
temperaturas.append(temperatura)
print("Temperaturas medias")
listas = 1
for temperatura in temperaturas:
print("Día %d. Temperatura media: %f:" % (listas,sum(temperatura)/len(temperatura)))
listas += 1
tempMin = temperaturas[0][1];
for temperatura in temperaturas:
if temperatura[1] < tempMin:
tempMin = temperatura[1]
existe_temperatura = False
print("Días con temperatura máxima")
tempMax = int(input("Introduce una temperatura:"))
listas = 1
for temperatura in temperaturas:
if temperatura[0] == tempMax:
print("Día %d" % listas)
existe_temperatura = True
listas +=1
if not existe_temperatura:
print("No hay ningún día con dicha temperatura.")
Ejercicio 10
Diseñar el algoritmo correspondiente a un programa, que:
lista_fila = 1
for fila in tabla:
print("La suma de los elemento de la fila %d es %d" % (lista_fila,sum(fila)))
lista_fila += 1
Ejercicio 11
Diseñar el algoritmo correspondiente a un programa, que:
Ejercicio 12
Diseñar el algoritmo correspondiente a un programa, que:
marco = []
numero_filas = 5
numero_columnas = 15
for lista_filas in range(0,numero_filas):
fila = []
for lista_columnas in range(0,numero_columnas):
if lista_filas == 0 or lista_filas == numero_filas - 1 or lista_columnas == 0 or
lista_columnas == numero_columnas -1:
fila.append(1)
else:
fila.append(0)
marco.append(fila)
Ejercicio 13
De una empresa de transporte se quiere guardar el nombre de los conductores que
tiene, y los kilómetros que conducen cada día de la semana.
Al finalizar se muestra la lista con los nombres de conductores y los kilómetros que ha
realizado.
dias =["Lunes","Martes","Miércoles","Jueves","Viernes","Sábado","Domingo"]
nombre = []
kms = []
while True:
if numero_conductores>0: break
km_dias = []
kms.append(km_dias)
total_kms = []
for km in kms:
total_kms.append(sum(km))
Ejercicio 14
Crear un programa que lea los precios de 5 artículos y las cantidades vendidas por
una empresa en sus 4 sucursales. Informar:
total_por_sucursal = []
for cantidad_sucursal in cantidades:
total=0
for precio,cantidad in zip(precios,cantidad_sucursal):
total=total+precio*cantidad
total_por_sucursal.append(total)
mayor_recaudacion = max(total_por_sucursal)
lista_sucursal = 1
for lista_sucursal in range(0, numero_sucursales):
print('Recaudaciones Sucursal %d: %f' %
(lista_sucursal,total_por_sucursal[lista_sucursal]))
lista_sucursal += 1
lista_sucursal = 1
for cantidad_sucursal in total_por_sucursal:
if cantidad_sucursal == mayor_recaudacion: break
lista_sucursal += 1
Ejercicio 15
Crear un programa de ordenador para gestionar los resultados de la quiniela de
fútbol. Para ello vamos a utilizar dos tablas:
numero_equipos = 15
equipos = []
resultados = []
for lista in range(0,numero_equipos):
partido = []
equipos.append(partido)
goles = []
resultados.append(goles)
print("Quiniela")
print(partido[0],"-",partido[1],":",end="")
print("-> 1")
else:
print("-> 2")
else:
print("-> X")
Ejercicio 16
Vamos a crear un programa que tenga el siguiente menú:
1. Añadir número a la lista: Me pide un número de la lista y lo añade al final de la
lista.
2. Añadir número de la lista en una posición: Me pide un número y una posición,
y si la posición existe en la lista lo añade a ella (la posición se pide a partir de
1).
3. Longitud de la lista: te muestra el número de elementos de la lista.
4. Eliminar el último número: Muestra el último número de la lista y lo borra.
5. Eliminar un número: Pide una posición, y si la posición existe en la lista lo
borra de ella (la posición se pide a partir de 1).
6. Contar números: Te pide un número y te dice cuantas apariciones hay en la
lista.
7. Posiciones de un número: Te pide un número y te dice en que posiciones está
(contando desde 1).
8. Mostrar números: Muestra los números de la lista
9. Salir
lista = []
while True:
print("1. Añadir número a la lista")
print("2. Añadir número de la lista en una posición")
print("3. Longitud de la lista")
print("4. Eliminar el último número")
print("5. Eliminar un número")
print("6. Contar números")
print("7. Posiciones de un número")
print("8. Mostrar números")
print("9. Salir")
opcion = int(input("Dime opción:"))
if opcion == 1:
num = int(input("Dime un número:"))
lista.append(num)
elif opcion == 2:
num = int(input("Dime un número:"))
pos = int(input("Dime una posición (empezando por 1):"))
if pos > len(lista):
print("Posición incorrecta")
else:
lista.insert(pos - 1,num)
elif opcion == 3:
print("Longitud de la lista: %d" % len(lista))
elif opcion == 4:
if len(lista)>0:
print("El último elemento es %d y lo borramos." % lista.pop())
else:
print("La lista está vacía")
elif opcion == 5:
pos = int(input("Dime una posición (empezando por 1):"))
if pos > len(lista):
print("Posición incorrecta")
else:
print("El elemento es %d y lo borramos." % lista.pop(pos - 1))
elif opcion == 6:
num = int(input("Dime un número:"))
print("El número %d aparece %d veces en la lista." % (num,lista.count(lista)))
elif opcion == 7:
num = int(input("Dime un número:"))
indice_buscar = 0
print("Posiciones: ",end="")
for indice in range(0,lista.count(num)):
indice_buscar = lista.index(num,indice_buscar)
indice_buscar +=1
print(indice_buscar," ",end="")
print()
elif opcion == 8:
for num in lista:
print(num," ",end="")
print()
elif opcion == 9:
break
else:
print("Opción incorrecta")
Ejercicio 17
Crear un programa que añada números a una lista hasta que introducimos un
número negativo. A continuación, debe crear una nueva lista igual que la anterior,
pero eliminando los números duplicados. Muestra esta segunda lista para comprobar
que hemos eliminados los duplicados.
lista = []
lista_sin_duplicados = []
while num>=0:
lista.append(num)
lista_sin_duplicados.append(num)
print(num," ",end="")
print()
Ejercicio 18
Escriba un programa que permita crear una lista de palabras y que, a continuación
de tres opciones:
lista = []
cadena = input("Introduce una cadena. (* para terminar):")
while cadena != "*":
lista.append(cadena)
cadena = input("Introduce una cadena. (* para terminar):")
while True:
print("\n")
print("1. Contar")
print("2. Modificar")
print("3. Eliminar")
print("4. Mostrar")
print("5. Salir")
opcion = int(input("Dime opción:"))
if opcion == 1:
cadena = input("Introduce una cadena a buscar:")
print("La cadena aparece %d veces" % lista.count(cadena))
elif opcion == 2:
cadena = input("Introduce una cadena a buscar:")
cadena2 = input("Introduce una cadena a modificar:")
indice = 0
for elemento in lista:
if elemento == cadena:
lista[indice] = cadena2
indice += 1
elif opcion == 3:
cadena = input("Introduce una cadena a eliminar:")
if cadena in lista:
while cadena in lista:
lista.remove(cadena)
else:
print("No existe la cadena en la lista.")
elif opcion == 4:
for elemento in lista:
print(elemento," ",end="")
elif opcion == 5:
break
else:
print("Opción incorrecta")