You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
102 lines
2.2 KiB
102 lines
2.2 KiB
import random as r
|
|
|
|
def binaire2unitaire(x):
|
|
lentre=[]
|
|
unitaire=[]
|
|
rep=0
|
|
for i in str(x):
|
|
lentre.append(i)
|
|
pre=lentre[0]
|
|
for i in lentre:
|
|
if(pre==i):
|
|
rep+=1
|
|
else:
|
|
if(pre=="1"):
|
|
unitaire.append(0)
|
|
else:
|
|
unitaire.append(0)
|
|
unitaire.append(0)
|
|
unitaire.append(" ")
|
|
for j in range(rep):
|
|
unitaire.append(0)
|
|
unitaire.append(" ")
|
|
rep=1
|
|
pre=i
|
|
if(pre=="1"):
|
|
unitaire.append(0)
|
|
else:
|
|
unitaire.append(0)
|
|
unitaire.append(0)
|
|
unitaire.append(" ")
|
|
for j in range(rep):
|
|
unitaire.append(0)
|
|
r=""
|
|
for i in unitaire:
|
|
r=r+str(i)
|
|
return r
|
|
|
|
|
|
def binaire2unitaireV2(x):
|
|
rep=0
|
|
pre=x[0]
|
|
unitaire=""
|
|
for i in x:
|
|
if(pre==i):
|
|
rep+=1
|
|
else:
|
|
if(pre=="1"):
|
|
unitaire=unitaire+"0 "
|
|
else:
|
|
unitaire=unitaire+"00 "
|
|
for j in range(rep):
|
|
unitaire=unitaire+"0"
|
|
unitaire=unitaire+" "
|
|
rep=1
|
|
pre=i
|
|
if(pre=="1"):
|
|
unitaire=unitaire+"0 "
|
|
else:
|
|
unitaire=unitaire+"00 "
|
|
for i in range(rep):
|
|
unitaire=unitaire+"0"
|
|
return unitaire
|
|
|
|
|
|
def binaire2unitaireVerif(x):
|
|
rep=0
|
|
pre=x[0]
|
|
unitaire=""
|
|
for i in x:
|
|
if(pre==i):
|
|
rep+=1
|
|
else:
|
|
if(pre=="1"):
|
|
unitaire=unitaire+"0 "
|
|
else:
|
|
unitaire=unitaire+"00 "
|
|
for j in range(rep):
|
|
unitaire=unitaire+"0"
|
|
unitaire=unitaire+" "
|
|
rep=1
|
|
pre=i
|
|
if(pre=="1"):
|
|
unitaire=unitaire+"0 "
|
|
else:
|
|
unitaire=unitaire+"00 "
|
|
for i in range(rep):
|
|
unitaire=unitaire+"0"
|
|
return unitaire
|
|
|
|
|
|
|
|
def testChuckNorris(x):
|
|
l=""
|
|
for i in range(x):
|
|
for j in range(r.randint(1,10)):
|
|
l=l+str(r.randint(0,1))
|
|
print(l)
|
|
if(binaire2unitaireV2(l)!=binaire2unitaireVerif(l)):
|
|
return False
|
|
return True
|
|
|
|
print(testChuckNorris(10)) |