Created
March 9, 2019 00:37
-
-
Save ilkermanap/118be2508c08cd36134c858cb105a6f3 to your computer and use it in GitHub Desktop.
Adam asmaca oyunu.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import sys | |
class Kelime: | |
def __init__(self, kelime): | |
self.kelime = kelime | |
self.bulunan = [] | |
def kontrol(self): | |
for harf in self.kelime: | |
if harf not in self.bulunan: | |
return False | |
return True | |
def tahmin(self, harf): | |
harf = harf[0] | |
if harf not in self.bulunan: | |
if harf in self.kelime: | |
self.bulunan.append(harf) | |
return True | |
return False | |
else: | |
print("%s zaten soylenmis" % harf) | |
return True | |
def __str__(self): | |
s = "" | |
for harf in self.kelime: | |
if harf in self.bulunan: | |
s += harf | |
else: | |
s += "_" | |
return s | |
class Oyuncu: | |
def __init__(self, adi, max_hata): | |
self.adi = adi | |
self.hata = 0 | |
self.max_hata = max_hata | |
def cevap(self, durumu): | |
if durumu == False: | |
self.hata += 1 | |
if self.hata == self.max_hata: | |
return False | |
return True | |
def kalan(self): | |
return self.max_hata - self.hata | |
class Oyun: | |
def __init__(self, oyuncu, kelime): | |
self.oyuncu = oyuncu | |
self.kelime = kelime | |
self.bitti = False | |
def sor(self, harf): | |
if self.oyuncu.cevap(self.kelime.tahmin(harf)) == False: | |
print("Kaybettin") | |
self.bitti = True | |
else: | |
print(self.oyuncu.kalan(), " hakkin kaldi") | |
print(str(self.kelime)) | |
if self.kelime.kontrol() == True: | |
print("Bildin") | |
sys.exit() | |
if __name__ == "__main__": | |
oyuncu = Oyuncu("ilker", 5) | |
kelime = Kelime("Deneme") | |
oyun = Oyun(oyuncu, kelime) | |
while not oyun.bitti: | |
harf = input("Harf gir ") | |
oyun.sor(harf) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment