İyi günler.
Arkadaşlar yukarıdaki linkten kaynak kodlarına ulaşabileceğiniz programın amacı şudur:
Satranç oynarken hamleleri daha sonra inceleyebilmek için kaydetmek gerekir. Bu kaydetme işleminin yaygın olarak kullanılan iki yolu var.
Bildiğiniz gibi satranç tahtası 8 satır ve 8 sütundan oluşur. Satırlar 1-8 arası rakamlarla, sütunlar ise A-H arası harflerle tanımlanır. Örneğin satranç tahtasının sol alt köşesindeki karenin koordinatları A1'dir. Bir satranç tahtasının doğru olarak konumlanabilmesi için her vezir kendi rengindeki karede bulunur ve sağ alt köşede her zaman beyaz karenin olması gerekir.
Hamleleri kaydetmenin ilk yolu, taşın bulunduğu hücrenin ve taşın gideceği hücrenin koordinatlarını yazmaktır.
ÖR: b1-c3 //vezir tarafındaki atı oynamak için
Yukarıdaki hamleyi yazmanın diğer yolu da, hareket eden taşın adının kısaltmasını ve taşın gideceği yeri yazmaktır.
ÖR: Ac3 //At c3 karesine gider
Satranç programlarının çoğu standart olarak 2. yolu benimsemişlerdir ve bu şekilde oluşturulan dosyalara PGN adı verilmektedir.
Fakat internet üzerinde satranç oynanan bir çok yerde(mesela Yahoo Games) hamleler ilk yolla kaydedilmekte. Bunun sonucunda siz bu hamleleri bilgisayarınızda analiz edebilmek için satranç programızı açıp, hamleleri teker teker girmelisiniz.
İşte yukarıdaki linkten indirebileceğiniz program, 1. yolla yazılmış hamleleri 2. yolla yazılmış hale çeviriyor. PGN formatında taşların isimleri İngilizce. Aşağıdaki hangi taşların hangi harfle simgelendiği yer almakta(Büyük yazılan harf, taşın simgesidir.)
Piyon: pawn (piyon hamlelerinde taşın adı yazılmaz.)
Kale: Rook
At: kNight
Fil: Bishop
Vezir: Queen
Şah: King
Yukarıdaki kurallara ek olarak, her iki hamle yazma yazımında da yeme işlemi x il belirtiliyor.
ÖR: b1xc3 //1.yol
ÖR: Nxc3 //2.yol
Küçük ve büyük rok her iki biçimde de o-o ve o-o-o ile gösteriliyor.
Yukarıdaki zip dosyasının içinde gerekli örnekler yer almakta.
Program şu an işini yapabiliyor, ama geliştirilecek çok yönü var. Bununla ilgili ayrıntılar da zip dosyasının içinde. Kodların bu sitede yayınlanmasının amacı da gönüllü bir çalışma grubu oluşturarak programı geliştirmek. Her türlü görüşlerinizi bekliyorum.
Ayrıca yukarıdaki kodlar -acemice yazılmış da

- olsa yeni başlayanlara da yardım edebilir.
Eğer programı geliştirmeyi deneyecekseniz size şimdiden iyi eğlenceler, çünkü ben kodları yazarken çok eğlendim...
Herkese iyi çalışmalar.