• 16-12-2015, 18:05:36
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Arkadaşlar ne yaptıysam bir türlü kurgulayamadım. Ödev C de yazılacak.

    Diz ilerle yapıcam ama oturtamıyorum bir türlü

    8*8 bir board düşünün sütunlar abcdefgh satılar 12345678

    iki tane beyaz a t ve bir siyah s ah var. ilk konumlarını klavyeden veriyoruz.

    @t1 icin konum giriniz: b5
    @t2 icin konum giriniz: d7
    s@h icin konum giriniz: e3 mesela

    sonra oynuyoruz (buraya kadar olan kodlama bile işime çok yarar)

    oyna: b5 d5

    dediğimizde b5 deki at1 d5e gidiyor. yardımcı olabilecek var mı acaba? Tamamı olmasa da belli bir konuma kadar gelse program çok sevineceğim.
  • 16-12-2015, 22:27:59
    #2
    Öncelikle tanım biraz eksik kalmış gibi örneğin bu oyunda satranç kuralları mı geçerli? Taşlar birbirini yiyebiliyor mu satrançtaki gibi?

    Şayet satranç olarak kurgulandıysa at ve şah için birer hareket fonksiyonu yazmanız ve satrançtaki hareketlerine göre verilen konumun doğru olup olmadığı kontrol etmeniz, doğruysa taşı oraya hareket ettirmeniz, hedefte bir taş var ise de onu silmeniz ( 'yeme' olayı) gerekiyor.
  • 17-12-2015, 09:53:33
    #3
    Merhaba cevabınız için teşekkür ederim. Kurallar aynen geçerli. Söyledikleriniz biraz fikir verdi tabi.


    Biraz alıntılayarak bir şeyler yaptım ama senin dediğin daha iyi sanki. Bu sadece At için. Yanlış yoldan gittiğimi biliyorum.

    Kodu buraya yapıştıramadım bir türlü
  • 17-12-2015, 20:21:59
    #4
    Bir satranç ödevi yapmıştım at ve şah için şu hareket kuralları geçerli

    x1,y1 = taşın ilk konumu
    x2,y2 = taşın gideceği konum

    | (x1 - x2)*(y1 - y2) | ifadesi 2'ye eşitse ve atın gideceği yerde boşsa ve ya farklı renkte (şah hariç) ise at hareket edebilir

    Şah içinse

    | (x1-x2) | <= 1 ve | (y1-y2) | <= 1 olmalıdır aynı şekilde gideceği yer boş olmalı ve ya karşı renkten şah hariç bir taş olmalıdır
  • 18-12-2015, 13:16:50
    #5
    at değil ya k@le olacaktı