codepad
[
create a new paste
]
login
|
about
Language:
C
C++
D
Haskell
Lua
OCaml
PHP
Perl
Plain Text
Python
Ruby
Scheme
Tcl
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()
Private
[
?
]
Run code
Submit