Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

DESAFIO

Entrenando la programación

1. Promedio de gastos

gastos = [2172.54, 3701.35, 3518.09, 3456.61, 3249.38, 2840.82, 3891.45, 3075.26, 2317.64, 3219.08]

promedio = sum(gastos) / len(gastos)
print(f"Promedio de gastos: {promedio:.2f}")

2. Compras mayores a 3000

mayores_3000 = [g for g in gastos if g > 3000]
porcentaje = (len(mayores_3000) / len(gastos)) * 100

print(f"Compras > 3000: {len(mayores_3000)} ({porcentaje:.2f}%)")

3. Lista de 5 números aleatorios

import random

numeros = [random.randint(1, 10) for _ in range(5)]
print("Lista aleatoria:", numeros)

4. Lista en orden inverso

print("Lista inversa:", numeros[::-1])

5. Números primos hasta N

def es_primo(n):
    if n < 2:
        return False
    for i in range(2, int(n**0.5) + 1):
        if n % i == 0:
            return False
    return True

n = int(input("Ingresa un número: "))
primos = [i for i in range(1, n+1) if es_primo(i)]
print("Primos:", primos)

6. Validar fecha

import datetime

dia = int(input("Día: "))
mes = int(input("Mes: "))
año = int(input("Año: "))

try:
    fecha = datetime.date(año, mes, dia)
    print("Fecha válida:", fecha)
except ValueError:
    print("Fecha inválida")

Momento de los proyectos

7. Crecimiento bacterias

bacterias = [1.2, 2.1, 3.3, 5.0, 7.8, 11.3, 16.6, 25.1, 37.8, 56.9]

crecimientos = []
for i in range(1, len(bacterias)):
    crecimiento = 100 * (bacterias[i] - bacterias[i-1]) / bacterias[i-1]
    crecimientos.append(round(crecimiento, 2))

print("Porcentajes de crecimiento:", crecimientos)

8. IDs dulces (pares) y amargos (impares)

ids = [int(input(f"ID {i+1}: ")) for i in range(10)]
dulces = len([x for x in ids if x % 2 == 0])
amargos = len(ids) - dulces

print(f"Dulces: {dulces}, Amargos: {amargos}")

9. Examen (10 preguntas)

respuestas = ['D','A','C','B','A','D','C','C','A','B']
puntaje = 0

for i, correcta in enumerate(respuestas, start=1):
    resp = input(f"Pregunta {i}: ").upper()
    if resp == correcta:
        puntaje += 1

print(f"Puntuación final: {puntaje}/10")

10. Temperatura promedio anual

meses = ["Enero","Febrero","Marzo","Abril","Mayo","Junio",
         "Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"]

temps = [float(input(f"Temperatura media en {mes}: ")) for mes in meses]
promedio = sum(temps) / 12

print(f"Promedio anual: {promedio:.2f}")
for i, t in enumerate(temps):
    if t > promedio:
        print(f"{meses[i]}: {t}")

11. Ventas totales y producto más vendido

ventas = {'Producto A': 300, 'Producto B': 80, 'Producto C': 60,
          'Producto D': 200, 'Producto E': 250, 'Producto F': 30}

total = sum(ventas.values())
mas_vendido = max(ventas, key=ventas.get)

print("Total ventas:", total)
print("Producto más vendido:", mas_vendido)

12. Encuesta de marca

votos = {'Diseño 1': 1334, 'Diseño 2': 982, 'Diseño 3': 1751, 'Diseño 4': 210, 'Diseño 5': 1811}

total = sum(votos.values())
ganador = max(votos, key=votos.get)
porcentaje = (votos[ganador] / total) * 100

print("Ganador:", ganador)
print(f"Porcentaje: {porcentaje:.2f}%")

13. Bonificaciones

salarios = [1172, 1644, 2617, 5130, 5532, 6341, 6650, 7238, 7685, 7782, 7903]

bonificaciones = {s: max(s*0.1, 200) for s in salarios}
total_bono = sum(bonificaciones.values())
minimos = sum(1 for v in bonificaciones.values() if v == 200)
max_bono = max(bonificaciones.values())

print("Total en bonificaciones:", total_bono)
print("Empleados con bono mínimo:", minimos)
print("Bono más alto:", max_bono)

14. Diversidad biológica

areas = {
    'Área Norte': [2819, 7236],
    'Área Leste': [1440, 9492],
    'Área Sul': [5969, 7496],
    'Área Oeste': [14446, 49688],
    'Área Centro': [22558, 45148]
}

promedios = {k: sum(v)/len(v) for k,v in areas.items()}
mayor_area = max(promedios, key=promedios.get)

print("Promedio de especies por área:", promedios)
print("Área con mayor diversidad:", mayor_area)

15. Edades por sector

sectores = {
 'Setor A': [22, 26, 30, 30, 35, 38, 40, 56, 57, 65],
 'Setor B': [22, 24, 26, 33, 41, 49, 50, 54, 60, 64],
 'Setor C': [23, 26, 26, 29, 34, 35, 36, 41, 52, 56],
 'Setor D': [19, 20, 25, 27, 34, 39, 42, 44, 50, 65]
}

medias = {k: sum(v)/len(v) for k,v in sectores.items()}
todas_edades = sum(sectores.values(), [])
media_general = sum(todas_edades)/len(todas_edades)
mayores = len([e for e in todas_edades if e > media_general])

print("Media por sector:", medias)
print("Media general:", media_general)
print("Personas > media general:", mayores)
1 respuesta

Hola , espero que estés muy bien.

Felicitaciones por tu aprendizaje. Estamos priorizando el foro para postear dudas, así optimizamos el tiempo de respuesta para ustedes.

Para no dejar de compartir los códigos, actividades y ejercicios que realizas, creamos un canal en Discord (#compartetucodigo) donde puedes compartirlos, dar y sugerir mejoras con el resto de tus compañeros.

Un saludo.

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios