[ create a new paste ] login | about

Link: http://codepad.org/D2FGbT5B    [ raw code | output | fork ]

Python, pasted on May 26:
import random

# Kart sınıfı tanımı
class Kart:
    def __init__(self, tip, deger):
        self.tip = tip
        self.deger = deger

    def __repr__(self):
        return f"{self.tip}-{self.deger}"

# Desteyi oluşturma
deste = []
for tip in ["Kupa", "Karo", "Sinek", "Maça"]:
    for deger in range(1, 14):
        kart = Kart(tip, deger)
        deste.append(kart)

# Oyuncu ve bilgisayarın elindeki kartları temsil eden listeler
oyuncu_el = []
bilgisayar_el = []

def kart_dagit():
    # Desteden 4'er kart dağıtma işlemi
    for _ in range(4):
        kart = random.choice(deste)
        deste.remove(kart)
        oyuncu_el.append(kart)

        kart = random.choice(deste)
        deste.remove(kart)
        bilgisayar_el.append(kart)

def kart_at(kart, el):
    # Belirli bir kartı masaya atma işlemi
    el.remove(kart)
    return kart

def kart_cek():
    # Desteden bir kart çekme işlemi
    kart = random.choice(deste)
    deste.remove(kart)
    return kart

def puan_hesapla(kartlar):
    # Verilen kart listesinin puanını hesaplama
    puan = 0
    for kart in kartlar:
        if kart.deger in [1, 11, 12, 13]:
            puan += 1
        elif kart.deger == 10:
            puan += 3
    return puan

def oyuncu_hamlesi():
    # Kullanıcıdan hamle almak için gerekli kodlar
    while True:
        print("Elinizdeki kartlar:")
        for i, kart in enumerate(oyuncu_el):
            print(f"{i+1}. Kart: {kart}")

        secim = input("Bir kart seçin (0 çıkış): ")
        if secim == "0":
            exit()

        try:
            secim = int(secim)
            if secim < 1 or secim > len(oyuncu_el):
                print("Geçersiz seçim. Tekrar deneyin.")
            else:
                return kart_at(oyuncu_el[secim-1], oyuncu_el)
        except ValueError:
            print("Geçersiz seçim. Tekrar deneyin.")

def bilgisayar_hamlesi():
    # Bilgisayarın hamlesini seçme işlemi
    # Basit bir strateji kullanarak en iyi hamleyi belirlemeye çalışacağız

    # Eğer elde pişti yapacak bir kombinasyon varsa, pişti yap
    for kart1 in bilgisayar_el:
        for kart2 in bilgisayar_el:
            if kart1.deger == kart2.deger and kart1.tip != kart2.tip:
                return kart_at(kart1, bilgisayar_el), kart_at(kart2, bilgisayar_el)

    # Eğer pişti yapacak bir kombinasyon yoksa, rastgele bir kart çek ve at
    cekilen_kart = kart_cek()
    return kart_at(cekilen_kart, bilgisayar_el), None

def oyunu_baslat():
    kart_dagit()

    while True:
        print("Elinizdeki kartlar:")
        for i, kart in enumerate(oyuncu_el):
            print(f"{i+1}. Kart: {kart}")

        oyuncu_secimi = oyuncu_hamlesi()
        bilgisayar_secimi = bilgisayar_hamlesi()

        print("Bilgisayarın seçimi:", bilgisayar_secimi[0])

        if bilgisayar_secimi[1] is not None:
            print("Pişti yapıldı!")

        masaya_atilan_kartlar = [oyuncu_secimi, bilgisayar_secimi[0]]
        puan = puan_hesapla(masaya_atilan_kartlar)

        print("Masaya atılan kartlar:", masaya_atilan_kartlar)
        print("Bu elki puan:", puan)

        # Burada oyunun devamını sağlayacak kodlar yer alacak

oyunu_baslat()


Output:
1
2
  Line 3
SyntaxError: Non-ASCII character '\xc4' in file t.py on line 3, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details


Create a new paste based on this one


Comments: