Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # em5.py
- from am_tools import *
- apostaEM = dict()
- apostaEM = {}
- apostaEM = {
- "nums":[],
- "estrelas":[]
- }
- print(apostaEM)
- apostaEM = {
- "nums":inteirosAleatorios(1, 50, 5, False),
- "estrelas":inteirosAleatorios(1, 10, 2, False)
- }
- print(apostaEM)
- nums = inteirosAleatorios(1, 50, 5, False)
- stars = inteirosAleatorios(1, 10, 2, False)
- nums.sort() # sorting in-place
- stars.sort() # sorting in-place
- apostaEM = {
- "nums": nums,
- "estrelas": stars
- }
- print(apostaEM)
- ****************************+
- # am_tools.py
- import random
- # ferramenta genérica de nome
- # "inteirosAleatorios"
- # para gerar
- # coleções de inteiros aleatórios
- # entre um mínimo e um máximo,
- # em quantidade configurável.
- DEFAULT_MIN = 1
- DEFAULT_MAX = 50
- DEFAULT_Q = 5
- DEFAULT_ACCEPT_REP = False
- def inteirosAleatorios(
- pMin:int=DEFAULT_MIN,
- pMax:int=DEFAULT_MAX,
- pQ:int=DEFAULT_Q,
- pbAcceptRepetitions:bool=DEFAULT_ACCEPT_REP
- ):
- colComOsInteiros:list=[]
- iAmplitude:int = pMax-pMin+1
- bPossivelTrabalhar = pQ<=iAmplitude
- if (not bPossivelTrabalhar):
- return colComOsInteiros
- while(len(colComOsInteiros)<pQ):
- i=random.randint(pMin, pMax)
- if(pbAcceptRepetitions):
- colComOsInteiros.append(i)
- else: # rejeitar repetições
- # procurar!
- resultadoDaProcura =\
- procuraGenerica_v3(colComOsInteiros, i)
- bEncontrei = len(resultadoDaProcura)>0
- if(not bEncontrei):
- colComOsInteiros.append(i)
- # if
- # else
- #while
- return colComOsInteiros
- def inteirosAleatorios_v0(
- pMin:int=DEFAULT_MIN,
- pMax:int=DEFAULT_MAX,
- pQuantidade:int=DEFAULT_Q,
- )->list:
- retorno:list=[] # 0 elementos
- while(len(retorno)<pQuantidade):
- i:int = random.randint(
- pMin,
- pMax
- )
- retorno.append(i)
- return retorno
- # def inteirosAleatorios_v0
- def procuraGenerica_v0(
- pCol:list, # a coleção / o espaço de dados onde procurar
- pE:int # o elemento a procurar na coleção
- )->bool: # retorna True se encontrar pE em pCol; False c.c.
- return pE in pCol
- # procuraGenerica_v0
- def procuraGenerica_v1(
- pCol:list, # a coleção / o espaço de dados onde procurar
- pE:int # o elemento a procurar na coleção
- )->bool: # retorna True se encontrar pE em pCol; False c.c.
- bColVazia = len(pCol)==0
- if (not bColVazia):
- enderecosValidos = range(0, len(pCol))
- for passeio in enderecosValidos:
- quemResideNoEndereco = pCol[passeio]
- bEncontreiOQueProcuro =\
- pE == quemResideNoEndereco
- if (bEncontreiOQueProcuro):
- return True # termina a função
- # if
- # for
- else:
- # se vazia, não tem elementos
- return False # uma col vazia não tem els
- # if-else
- return False
- # procuraGenerica_v1
- def procuraGenerica_v2(pCol, pE)->True:
- for el in pCol:
- if(el==pE):
- return True
- # if
- # for
- return False
- # def procuraGenerica_v2
- def procuraGenerica_v3(pCol, pE)->list:
- enderecosEmQueSeEncontra = list()
- for endereco in range(0, len(pCol)):
- el = pCol[endereco]
- bEncontrei = el==pE
- if(bEncontrei):
- enderecosEmQueSeEncontra.append(endereco)
- #if
- # for
- return enderecosEmQueSeEncontra
- # def procuraGenerica_v3
Advertisement
Add Comment
Please, Sign In to add comment