import random as r # Fonction avec des int (Pas la bonne fonction) 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 # fonction avec des str (bonne fonction) 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="0000000" if(binaire2unitaireV2(l)!="00 0000000"): return False l="1111111" if(binaire2unitaireV2(l)!="0 0000000"): return False l="1101001" if(binaire2unitaireV2(l)!="0 00 00 0 0 0 00 00 0 0"): return False l="" for i in range(x): for j in range(r.randint(1,10)): l=l+str(r.randint(0,1)) if(binaire2unitaireV2(l)!=binaire2unitaireVerif(l)): return False l="" return True print(testChuckNorris(10))