import random

# Simulación de una cola de atención al cliente durante 60 minutos

tiempo_simulacion = 60  # minutos
clientes = []
tiempo_actual = 0

while tiempo_actual < tiempo_simulacion:
    # Tiempo entre llegadas (1 a 5 minutos)
    llegada = random.randint(1, 5)
    tiempo_actual += llegada

    if tiempo_actual > tiempo_simulacion:
        break

    # Tiempo de atención (2 a 6 minutos)
    servicio = random.randint(2, 6)

    clientes.append({
        "llegada": tiempo_actual,
        "servicio": servicio
    })

# Simulación de la atención
fin_anterior = 0
espera_total = 0

print("Cliente\tLlegada\tServicio\tEspera")

for i, cliente in enumerate(clientes, start=1):
    inicio = max(cliente["llegada"], fin_anterior)
    espera = inicio - cliente["llegada"]
    fin_anterior = inicio + cliente["servicio"]
    espera_total += espera

    print(f"{i}\t{cliente['llegada']}\t{cliente['servicio']}\t\t{espera}")

if len(clientes) > 0:
    promedio = espera_total / len(clientes)
else:
    promedio = 0

print("\nTotal de clientes atendidos:", len(clientes))
print("Tiempo promedio de espera:", round(promedio, 2), "minutos")

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: