Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
0
respuestas

Desafio Hora de Practicar con funciones map, filter, lambda

1 Análisis de lista
`

lista = [16, 14, 63, 65, 17, 99, 70, 11, 20, 48, 79, 32, 17, 89, 12, 25, 66]

tamano = len(lista)
mayor = max(lista)
menor = min(lista)
suma = sum(lista)

print(f"La lista tiene {tamano} números, donde el mayor es {mayor} y el menor es {menor}. La suma de los valores es {suma}.")

2 Tabla de multiplicar

def tabla_multiplicar(n: int):
    print(f"Tabla del {n}:")
    for i in range(11):
        print(f"{n} x {i} = {n * i}")

# Ejemplo
tabla_multiplicar(8)

3 Múltiplos de 3

def multiplos_de_3(lista: list) -> list:
    return [x for x in lista if x % 3 == 0]

numeros = [97, 80, 94, 88, 80, 1, 16, 53, 62, 32, 24, 99]
print(multiplos_de_3(numeros))

4 Cuadrados con lambda y map

numeros = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
cuadrados = list(map(lambda x: x**2, numeros))
print(cuadrados)

5 Puntuación de skaters

notas = [float(input(f"Ingrese la nota {i+1}: ")) for i in range(5)]
promedio = sum(notas) / len(notas)
print(f"La puntuación del atleta es: {round(promedio, 2)}")

6 Análisis de notas

def boletin(notas: list) -> str:
    mayor = max(notas)
    menor = min(notas)
    media = round(sum(notas) / len(notas), 2)
    situacion = "Aprobado(a)" if media >= 7 else "Reprobado(a)"
    return f"El estudiante obtuvo una media de {media}, con la mayor nota de {mayor} puntos y la menor nota de {menor} puntos y fue {situacion}."

# Ejemplo
notas = [9.5, 6.0, 8.0, 7.5]
print(boletin(notas))

7 Nombres completos normalizados

nombres = ["juan", "MaRia", "JOSÉ"]
apellidos = ["SILVA", "sosa", "Tavares"]

nombres_completos = list(map(lambda n, a: f"{n.capitalize()} {a.capitalize()}", nombres, apellidos))
print(nombres_completos)

8 Puntos y rendimiento del equipo

def calcula_puntos(goles_marcados: list, goles_recibidos: list):
    puntos = 0
    for gm, gr in zip(goles_marcados, goles_recibidos):
        if gm > gr:
            puntos += 3
        elif gm == gr:
            puntos += 1
    max_puntos = len(goles_marcados) * 3
    rendimiento = round((puntos / max_puntos) * 100, 2)
    return puntos, rendimiento

goles_marcados = [2, 1, 3, 1, 0]
goles_recibidos = [1, 2, 2, 1, 3]

puntos, desempegno = calcula_puntos(goles_marcados, goles_recibidos)
print(f"La puntuación del equipo fue {puntos} y su rendimiento fue {desempegno}%")

9 cálculo de gastos de viaje

def gasto_hotel(dias: int) -> int:
    return dias * 150

def gasto_gasolina(distancia: int) -> float:
    km_totales = distancia * 2
    litros = km_totales / 14
    return litros * 5

def gasto_paseo(dias: int, ciudad: str) -> int:
    gastos_diarios = {"Salvador": 200, "Fortaleza": 400, "Natal": 250, "Aracaju": 300}
    return dias * gastos_diarios[ciudad]

# Simulación: 3 días en Salvador
dias = 3
ciudad = "Salvador"
distancias = {"Salvador": 850, "Fortaleza": 800, "Natal": 300, "Aracaju": 550}

total = gasto_hotel(dias) + gasto_gasolina(distancias[ciudad]) + gasto_paseo(dias, ciudad)
print(f"Con base en los gastos definidos, un viaje de {dias} días a {ciudad} desde Recife costaría {round(total, 2)} reales.")

10 Filtrar palabras con 5 o más letras

frase = "Aprender Python aquí en Alura es muy sencillo"
frase_limpia = frase.replace(",", " ").replace(".", " ").replace("!", " ").replace("?", " ")
palabras = frase_limpia.split()
largas = list(filter(lambda x: len(x) >= 5, palabras))
print(largas)

`