Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #sorteador_v3.py
- strGruposRecebidos = \
- """
- 220001395 220001418
- 220001404 220001207 220001637
- 220001350 220000808 220001408
- 980092719 220001403 220000542
- 220001337 220000807
- 220001613 220000538
- 200100265
- 220001662 220001670 220001521
- 220000415
- 220001342 220000882 220000730
- 220001648
- 220001647 220001436
- 220000005 220001674
- 220000001 220000006
- 190200190 220001639
- 190100391
- 220001462 220000839
- 220001300
- 220000329 220001367
- 220000520
- 220000394
- 220001410 220001406
- 220000541 220001661
- """
- def getGruposAsList(pStrGruposRecebidos:str)->list:
- listGrupos = []
- listGruposRaw =\
- pStrGruposRecebidos.strip().split("\n")
- for g in listGruposRaw:
- # g = "220001395 220001418"
- strGrupoStripped = g.strip()
- listGrupo = strGrupoStripped.split(" ")
- listGrupos.append(listGrupo)
- # for
- return listGrupos
- # def getGruposAsList
- # problema de associar números aos grupos
- def numerosParaOsGrupos(pListGrupos):
- listNumerosDosGrupos = list()
- numeroDoGrupo = 0
- for g in pListGrupos:
- strMsg = f"Grupo #{numeroDoGrupo} => {g}"
- print(strMsg, sep="\n")
- listNumerosDosGrupos.append(numeroDoGrupo)
- numeroDoGrupo+=1
- # for
- return listNumerosDosGrupos
- # def numerosParaOsGrupos
- lg = getGruposAsList(strGruposRecebidos)
- #print(lg)
- ng = numerosParaOsGrupos(lg)
- import numpy as np
- # problema #3 - sortear a ordem das apresentações,
- # usando a numeração de grupos decidida anteriormente
- strMsg = f"Grupos recebidos:\n{ng}"
- print(strMsg)
- np.random.shuffle(ng)
- strMsg = f"Ordem sorteada:\n{ng}"
- print(ng)
- def verMelhorOrdemDasApresentacoes(pListOrdem):
- apNum = 1
- strAll = ""
- for g in pListOrdem:
- strMsg = f"Apresentação #{apNum} : {g}"
- print(strMsg)
- strAll+=strMsg+"\n"
- apNum+=1
- # for
- fw = open("FP_ORDEM.TXT", "wt")
- fw.write(strAll)
- fw.close()
- # def verMelhorOrdemDasApresentacoes
- print ("_.-^-."*20)
- verMelhorOrdemDasApresentacoes(ng)
- ********************************************************
- Apresentação #1 : 10
- Apresentação #2 : 19
- Apresentação #3 : 1
- Apresentação #4 : 21
- Apresentação #5 : 17
- Apresentação #6 : 8
- Apresentação #7 : 5
- Apresentação #8 : 22
- Apresentação #9 : 12
- Apresentação #10 : 11
- Apresentação #11 : 4
- Apresentação #12 : 13
- Apresentação #13 : 2
- Apresentação #14 : 7
- Apresentação #15 : 9
- Apresentação #16 : 20
- Apresentação #17 : 15
- Apresentação #18 : 3
- Apresentação #19 : 6
- Apresentação #20 : 16
- Apresentação #21 : 18
- Apresentação #22 : 0
- Apresentação #23 : 14
Advertisement
Add Comment
Please, Sign In to add comment