import random
class fehler:
pass
class masterMind(object):
def __init__(self):
self.number = "99999"
self.CodeLaenge = 5
self.neuesSpiel()
self.versuche = 10
self.geheimCode = self.randomgeheimCode()
def randomgeheimCode(self):
Code = ""
random.seed()
for i in range(self.CodeLaenge):
Code += str(random.randint(0,9))
return Code
def neuesSpiel(self):
self.geheimCode = self.randomgeheimCode()
self.versuch = 0
def raten (self, Code):
self.check(Code)
self.versuche += 1
"""
schwarz = Zahl und Position richtig
weiss = nur Zahl richtig
"""
schwarz = 0
weiss = 0
i = 10
for i in range(len(self.geheimCode)):
if Code[i]==self.geheimCode[i]:
schwarz += 1
for i1 in range(len(self.geheimCode)):
if Code[i1]!=self.geheimCode[i1]:
weiss += 1
return (schwarz, weiss)
def check(self, Code):
# Eingabe so lang wie Code??
if len(Code) != self.CodeLaenge:
raise fehler()
c = 0
for c in range(self.check(Code)):
c != str(range.randint(0,9))
return c
mm = masterMind()
while True:
while True:
n = (raw_input(">> ")).upper()
try:
Ergebnis = mm.raten(n)
except fehler:
print "Bitte einen %s Stelligen Code, bis zu %s eingeben." % (mm.CodeLaenge,mm.number)
continue
print "schwarz %d - weiss %d" % (Ergebnis[0],Ergebnis[1])
if Ergebnis[0] == mm.CodeLaenge:
break
print
print "Du hast GEWONNEN"
print "Der Code war %s!" % mm.geheimCode
print