Merhaba,
Bunu nasıl bir anlam verebilirim ya da buna yapay zeka denir mi bilemediğim için fikrinizi alacağım.
Şimdi ben bir taş kağıt makas oyunu yazdım. Bilgisayar kendisi oynuyor. Oyun esnasında yaptıkları seçimleri bir listeye kayıt ediyor ve bir sonraki seçimlerini bu liste içerisinden yapıyor. Kaybettiği seçimleri de kazandığı seçimleri de aynı liste içerisine ekliyor. Belirli bir yerden sonra iki taraftan birinin kazanma oranı yükseldikçe kazanan seçimi listeye ekliyor. Böylece liste içerisinde kazanan değer daha fazla olduğu için onu seçme olasılığı artıyor.
Kodları paylaşayım;
tas_kagit_makas kodları
import random
from os import system
from time import sleep
player_eylemler = [1,2,3]
computer_eylemler = [1,2,3]
player_secim = [1,2,3]
tas_ct = []
kagit_ct = []
makas_ct = []
user = 0
pc = 0
while True:
skor_data = open("skor_data.txt","w",encoding="utf-8")
skor_data.write("Skor >> Oyuncu > {} | Bilgisayar > {}".format(user,pc))
skor_data.close()
eylem_data = open("eylem_data.txt","w",encoding="utf-8")
eylem_data.write("Player Eylemler > {}\n".format(player_eylemler))
eylem_data.write("Computer Eylemler > {}".format(computer_eylemler))
eylem_data.close()
ct_data = open("ct_data.txt","w",encoding="utf-8")
ct_data.write("TAŞ CT > {}\n".format(tas_ct))
ct_data.write("KAĞIT CT > {}\n".format(kagit_ct))
ct_data.write("MAKAS CT > {}\n".format(makas_ct))
ct_data.close()
print("\nSkor >> Oyuncu > {} | Bilgisayar > {}".format(user,pc))
player = random.choice(player_eylemler)
computer = random.choice(computer_eylemler)
secim_data = open("secim_data.txt","a",encoding="utf-8")
secim_data.write("Player >> {} | Computer >> {}\n".format(player,computer))
secim_data.close()
system("cls")
if player == computer:
print("\nBerabere")
player_eylemler.append(player)
computer_eylemler.append(computer)
pc += 1
user += 1
elif player == 1 and computer == 2:
print("\nBilgisayar Kazandı")
pc += 1
player_eylemler.append(player)
computer_eylemler.append(computer)
tas_ct.append(player)
elif player == 2 and computer == 3:
print("\nBilgisayar Kazandı")
pc += 1
player_eylemler.append(player)
computer_eylemler.append(computer)
kagit_ct.append(player)
elif player == 3 and computer == 1:
print("\nBilgisayar Kazandı")
pc += 1
player_eylemler.append(player)
computer_eylemler.append(computer)
makas_ct.append(player)
elif player == 2 and computer == 1:
print("\nOyuncu Kazandı")
user += 1
player_eylemler.append(player)
computer_eylemler.append(computer)
elif player == 3 and computer == 2:
print("\nOyuncu Kazandı")
user += 1
player_eylemler.append(player)
computer_eylemler.append(computer)
elif player == 1 and computer == 3:
print("\nOyuncu Kazandı")
user += 1
player_eylemler.append(player)
computer_eylemler.append(computer)
elif player == 0:
break
else:
print("\nSıkıntılı Durumlar Var")
Oyunun anlık durumunu takip edebilmek için verileri txt dosyalarına kayıt ediyorum ve bu txt dosyalarını admin_panel ile okuyorum. Onun kodları;
from os import system
while True:
print("""
CT_DATA İÇİN >> 1
EYLEM_DATA İÇİN >> 2
SECİM_DATA İÇİN >> 3
SKOR_DATA İÇİN >> 4
ÇIKIŞ İÇİN >> 0
""")
select = input("Seçiminiz >> ")
system("cls")
if select == "1":
file = open("ct_data.txt","r",encoding="utf-8")
print(file.read())
file.close()
elif select == "2":
file = open("eylem_data.txt","r",encoding="utf-8")
print(file.read())
file.close()
elif select == "3":
file = open("secim_data.txt","r",encoding="utf-8")
print(file.read())
file.close()
elif select == "4":
file = open("skor_data.txt","r",encoding="utf-8")
print(file.read())
file.close()
elif select == "0":
break
else:
print("\nSıkıntılı Durumlar Var")
Bu iki dosya aynı dizinde olduklarında birbirlerine bağlı olarak çalışıyorlar.
Düşüncelerinizi, fikirleriniz, yorumlarınızı alabilir miyim? Ve ya şurayı şöyle değiştir şöyle olursa daha iyi olur dediğiniz noktaları da duymak isterim.
Eğer bu kodlar kazanmayı öğretmiyorsa -ki sanki öğretmiyor :D- nasıl öğretebiliriz bi kafa patlatalım isterim.