import random import sys sys.setrecursionlimit(1000000000) class Verificateur(): """ obj verif""" def __init__(self): self.nblist = [] self.nb1 = 1 self.nb2 = 10 self.i = 0 def set_interval(self,nb1 = 1, nb2 = 10): self.nb1 = nb1 self.nb2 = nb2 def verif(self, nb): if type(nb) == float: self.nb = str(nb).split(".") #print(self.nb) #print("\n") self.nb = len(self.nb[1]) #print(self.nb) self.len = (self.nb2 - self.nb1) * 10 ** self.nb elif type(nb) == int: self.len = self.nb2 - self.nb1 else: pass if len(self.nblist) >= self.len: #print(f"test : {self.nblist}") return nb if self.nblist.count(nb) < 1: self.nblist.append(nb) #print(self.nblist) #print("bon") return nb else: if type(nb) == int: self.n = 0 self.n = random.randint(self.nb1, self.nb2) #print(f"C'EST N = {self.n}") #print(f"Faux : {nb}; test : {self.n}") # print(f"except : {self.n} ; {self.nblist.count(self.n)}, tour : {self.i}") self.i += 1 return self.verif(self.n) if type(nb) == float: self.n = 0 self.n = round(random.uniform(self.nb1, self.nb2), len(str(nb).split(".")[1])) #print(f"C'EST N = {self.n}") #print(f"Faux : {nb}; test : {self.n}") # print(f"except : {self.n} ; {self.nblist.count(self.n)}, tour : {self.i}") self.i += 1 return self.verif(self.n) #return self.n def int_verif(self, nb, nb1, nb2): if self.nblist.count(nb) < 1: self.nblist.append(nb) # print(self.nblist) return True else: #print(len(self.nblist)) if len(self.nblist) == nb2: print("BREAAAAAAK") return input() self.n = random.randint(nb1, nb2) print(f"Faux : {nb}; test : {self.n}") self.int_verif(self.n, nb1, nb2) print(self.nblist) return False def reinit(self): self.nblist[:] = [] self.nb1 = 1 self.nb2 = 10 """test.verif(5) for x in range(1, 10): n = random.randint(1, 10) print(f"{test.verif(n)}") print(test.nblist) for x in range(0, len(test.nblist)): print(test.nblist.count(x)) """