Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # coding: utf-8
- import multiprocessing as mp
- def conta(queue):
- print("Resolvendo a conta...")
- def reconhecimento_numeros(entrada):
- if 'x' in entrada or '*' in entrada:
- xis = entrada.find('x') if 'x' in entrada else entrada.find('*')
- elif '+' in entrada:
- xis = entrada.find('+')
- elif '-' in entrada:
- xis = entrada.find('-')
- elif '/' in entrada:
- xis = entrada.find('/')
- pri_num, seg_num = float(entrada[:xis:]), float(entrada[xis+1::])
- return pri_num, seg_num
- conta = queue.get()
- if conta == "vezes":
- entrada = queue.get()
- print('Entrada para conta:', entrada)
- pri_num, seg_num = reconhecimento_numeros(entrada)
- print("O resultado é %.1f\n" % (pri_num*seg_num))
- elif conta == "mais":
- entrada = queue.get()
- print('Entrada para conta:', entrada)
- pri_num, seg_num = reconhecimento_numeros(entrada)
- print("O resultado é %.1f\n" % (pri_num+seg_num))
- elif conta == "menos":
- entrada = queue.get()
- print('Entrada para conta:', entrada)
- pri_num, seg_num = reconhecimento_numeros(entrada)
- print("O resultado é %.1f\n" % (pri_num-seg_num))
- elif conta == "divisão":
- entrada = queue.get()
- print('Entrada para conta:', entrada)
- pri_num, seg_num = reconhecimento_numeros(entrada)
- print("O resultado é %.1f\n" % (pri_num/seg_num))
- else:
- print("Não reconhecemos esta operação aritmética ainda...\nNos desculpe!\n")
- def mandar_conta(queue, entrada):
- print("Reconhecimento iniciado!")
- print('Entrada:', entrada)
- print("Conta de", end=": ")
- if 'x' in entrada or '*' in entrada:
- print('Vezes\n')
- queue.put('vezes')
- elif '+' in entrada:
- print('Mais\n')
- queue.put('mais')
- elif '-' in entrada:
- print('Menos\n')
- queue.put('menos')
- elif '/' in entrada:
- print('Divisão\n')
- queue.put('divisão')
- queue.put(entrada)
- if __name__ == '__main__':
- while True:
- queue = mp.Queue()
- c1 = mp.Process(target=conta, args=(queue,))
- c1.daemon = True
- entrada_usuario = input("Digite uma conta: ")
- c1.start()
- mandar_conta(queue, entrada_usuario)
- c1.join()
Advertisement
Add Comment
Please, Sign In to add comment