0% encontró este documento útil (0 votos)
17 vistas

Codigo

El documento presenta una clase llamada usuario que simula llamadas telefónicas. La clase almacena información sobre abonados disponibles, fuera de servicio u ocupados. Realiza una llamada simulada asignando tiempo y costo, y almacena los datos en un dataframe para su análisis. El programa permite realizar múltiples llamadas de forma iterativa hasta que el usuario indica que desea terminar.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como TXT, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
17 vistas

Codigo

El documento presenta una clase llamada usuario que simula llamadas telefónicas. La clase almacena información sobre abonados disponibles, fuera de servicio u ocupados. Realiza una llamada simulada asignando tiempo y costo, y almacena los datos en un dataframe para su análisis. El programa permite realizar múltiples llamadas de forma iterativa hasta que el usuario indica que desea terminar.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como TXT, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 3

# coding=utf-8

import random
import time
import pandas as pd

class usuario:
def __init__(self):
self.disponibles = []
self.fueraservicio = []
self.ocupados = []
self.emisor = []
self.tiempo = []
self.costo = []

def abonadosdisponibles(self, numero):


self.disponibles.append(numero)
for i in range(1, 9):
self.disponibles.append(numero + i)
return self.disponibles

def abonadosfueraservicio(self):
for i in range(1, 4):
f = random.choice(self.disponibles)
self.fueraservicio.append(f)
self.disponibles.remove(f)
return self.fueraservicio

def abonadosocupados(self):
for i in range(1, 4):
o = random.choice(self.disponibles)
self.ocupados.append(o)
self.disponibles.remove(o)
print(" ")
print("Abonados Disponibles")
print(self.disponibles)
print(" ")
print("Abonados Fuera de Servicio")
print(self.fueraservicio)
print(" ")
print("Abonados Ocupados")
print(self.ocupados)
return self.ocupados

def seleccionaremisor(self):
e = random.choice(self.disponibles)
self.emisor.append(e)
return self.emisor

def clasificacion(self, numero):


global inicio, final
disponible = self.abonadosdisponibles(numero)
fueservicio = self.abonadosfueraservicio()
ocupado = self.abonadosocupados()
print(" ")
print("esta numero en servicio?")
if numero in fueservicio:
time.sleep(1)
print("...")
time.sleep(1)
print("...")
time.sleep(1)
print("...")
time.sleep(1)
print("el numero marcado se encuentra fuera de servicio")
tie = 0
cos = 0
self.tiempo.append(tie)
self.costo.append(cos)
elif numero in ocupado:
time.sleep(1)
print("...")
time.sleep(1)
print("...")
time.sleep(1)
print("...")
time.sleep(1)
print("el numero marcado se encuentra ocupado")
tie = 0
cos = 0
self.tiempo.append(tie)
self.costo.append(cos)
elif numero in disponible:
time.sleep(1)
print("...")
time.sleep(1)
print("...")
time.sleep(1)
print("...")
time.sleep(1)
inicio = time.time()
print("*Hola, ¿Como estas?")
time.sleep(random.randint(1, 5))
print("+Bien ¿y tu?")
time.sleep(random.randint(1, 5))
print("*Bien")
time.sleep(random.randint(1, 5))
print("+¿Que haces?")
time.sleep(random.randint(1, 5))
print("*En clase de conmutacion... Bye")
final = time.time()
self.tiempo.append(round(final - inicio, 0))
cob = round(final - inicio, 0) * 10
self.costo.append(cob)
return self.tiempo, self.costo

def hh(self):
q = self.tiempo
self.tiempo.append(q)
self.tiempo.remove(q)
return self.tiempo

def ll(self):
w = self.costo
self.costo.append(w)
self.costo.remove(w)
return self.costo
condicion = 'si'
df = pd.DataFrame()
while condicion == 'si':
numero = int(input('ingrese numero telefonico = '))
llamada = usuario()
llamada.clasificacion(numero)
emisor = llamada.seleccionaremisor()
receptor = numero
tiempo = llamada.hh()
costo = llamada.ll()
indice = ['1']
tabblafac = {'emisor': emisor, 'receptor': receptor, 'duracion en segundos':
tiempo, 'costo de llamada': costo}
df = df.append(pd.DataFrame(data=tabblafac, index=indice, columns=['emisor',
'receptor', 'duracion en segundos', 'costo de llamada']), ignore_index=True)
print (df)
condicion = input("¿desea intentarlo otra vez? ")
if condicion == 'no':
break
print("Cerrando programa")

-----------------------------------------------------------------------------------
------------------------------------------------------------------------------
Sea Breeze (Free Download) de Vlad Gluschenko está posteada bajo una licencia
Creative Commons.

Visuals made using https://musicvid.org and by creators:

BigWIngs - The Universe Within


https://twitter.com/The_ArtOfCode

También podría gustarte