Python Örnekleri – X, O oyunu

#Alt + 179: | (Dik çizgi)
#Alt + 196: ─ (Yatay çizgi)
#Alt + 192: └ (Sol alt köşe)
#Alt + 217: ┘ (Sağ alt köşe)
#Alt + 218: ┌ (Sol üst köşe)
#Alt + 191: ┐ (Sağ üst köşe)
#Alt + 194: ┬ (Yatay birleşme yukarı)
#Alt + 193: ┴ (Yatay birleşme aşağı)
#Alt + 195: ├ (Dikey birleşme sol)
#Alt + 180: ┤ (Dikey birleşme sağ)
#Alt + 197: ┼ (Orta birleşme)

#Oyunumuz ilk çalıştığında ekran biraz temizlensin.
print(" ")
print(" ")
print(" ")
print(" ")

#Oyuncu isimlerini gir.
x_oyuncusu = input("X Oyuncusu Adı: ")
o_oyuncusu = input("O Oyuncusu Adı: ")
oyuncuSirasi = False # (False ► X | True ► O)

#Oyun tahtasındaki bilgileri tutacak "List" değişkeni
oyunTahtasi = [" ", " ", " ", " ", " ", " ", " ", " ", " "]

#Oyun şartları sağlayınca break ile oyunu bitireceğiz.
while True:
    #Oyun Tahtası her işlemden sonra yenilenmiş hali ile tekrar görüntülenecek.
    print(" ")
    print(" " + oyunTahtasi[0] + " │ " + oyunTahtasi[1] + " │ " + oyunTahtasi[2] + " ")
    print("───┼───┼───")
    print(" " + oyunTahtasi[3] + " │ " + oyunTahtasi[4] + " │ " + oyunTahtasi[5] + " ")
    print("───┼───┼───")
    print(" " + oyunTahtasi[6] + " │ " + oyunTahtasi[7] + " │ " + oyunTahtasi[8] + " ")
    print(" ")
    
    #1. Satır Kontrolü
    if (oyunTahtasi[0] == "X" or oyunTahtasi[0] == "O") and (oyunTahtasi[0] == oyunTahtasi[1] == oyunTahtasi[2]):
        print(" ")
        print(" ")
        if oyunTahtasi[0] == "X":
            print(x_oyuncusu + " KAZANDI!!!")
        else:
            print(o_oyuncusu + " KAZANDI!!!")
        break
    
    #2. Satır Kontrolü
    if (oyunTahtasi[3] == "X" or oyunTahtasi[3] == "O") and (oyunTahtasi[3] == oyunTahtasi[4] == oyunTahtasi[5]):
        print(" ")
        print(" ")
        if oyunTahtasi[3] == "X":
            print(x_oyuncusu + " KAZANDI!!!")
        else:
            print(o_oyuncusu + " KAZANDI!!!")
        break
    
    #3. Satır Kontrolü
    if (oyunTahtasi[6] == "X" or oyunTahtasi[6] == "O") and (oyunTahtasi[6] == oyunTahtasi[7] == oyunTahtasi[8]):
        print(" ")
        print(" ")
        if oyunTahtasi[6] == "X":
            print(x_oyuncusu + " KAZANDI!!!")
        else:
            print(o_oyuncusu + " KAZANDI!!!")
        break
    
    #1. Sütun Kontrolü
    if (oyunTahtasi[0] == "X" or oyunTahtasi[0] == "O") and (oyunTahtasi[0] == oyunTahtasi[3] == oyunTahtasi[6]):
        print(" ")
        print(" ")
        if oyunTahtasi[0] == "X":
            print(x_oyuncusu + " KAZANDI!!!")
        else:
            print(o_oyuncusu + " KAZANDI!!!")
        break
    
    #2. Sütun Kontrolü
    if (oyunTahtasi[1] == "X" or oyunTahtasi[1] == "O") and (oyunTahtasi[1] == oyunTahtasi[4] == oyunTahtasi[7]):
        print(" ")
        print(" ")
        if oyunTahtasi[1] == "X":
            print(x_oyuncusu + " KAZANDI!!!")
        else:
            print(o_oyuncusu + " KAZANDI!!!")
        break
    
    #3. Sütun Kontrolü
    if (oyunTahtasi[2] == "X" or oyunTahtasi[2] == "O") and (oyunTahtasi[2] == oyunTahtasi[5] == oyunTahtasi[8]):
        print(" ")
        print(" ")
        if oyunTahtasi[2] == "X":
            print(x_oyuncusu + " KAZANDI!!!")
        else:
            print(o_oyuncusu + " KAZANDI!!!")
        break
    
    # \ Çapraz Kontrolü
    if (oyunTahtasi[0] == "X" or oyunTahtasi[0] == "O") and (oyunTahtasi[0] == oyunTahtasi[4] == oyunTahtasi[8]):
        print(" ")
        print(" ")
        if oyunTahtasi[0] == "X":
            print(x_oyuncusu + " KAZANDI!!!")
        else:
            print(o_oyuncusu + " KAZANDI!!!")
        break
    
    # / Çapraz Kontrolü
    if (oyunTahtasi[2] == "X" or oyunTahtasi[2] == "O") and (oyunTahtasi[2] == oyunTahtasi[4] == oyunTahtasi[6]):
        print(" ")
        print(" ")
        if oyunTahtasi[2] == "X":
            print(x_oyuncusu + " KAZANDI!!!")
        else:
            print(o_oyuncusu + " KAZANDI!!!")
        break
    
    #Oyuncunun sırasına göre giriş sağla.
    if oyuncuSirasi:
        #O oyuncusunun sırası
        yazman = int(input(o_oyuncusu + ": "))
        #Boş olan yere sadece işlem yapılacak ve oyuncu değişecek.
        if oyunTahtasi[yazman-1] == " ":
            oyunTahtasi[yazman-1] = "O"
            oyuncuSirasi = not oyuncuSirasi
    else:
        #X oyuncusunun sırası
        yazman = int(input(x_oyuncusu + ": "))
        #Boş olan yere sadece işlem yapılacak ve oyuncu değişecek.
        if oyunTahtasi[yazman-1] == " ":
            oyunTahtasi[yazman-1] = "X"
            oyuncuSirasi = not oyuncuSirasi
print(" ")
print(" ")
print(" ")

Ekran Çıktısı

   │   │ X
───┼───┼───
   │ O │
───┼───┼───
   │   │

X oyuncusu: 7

Yorum bırakın