Atölye › Satranç › 9/48. adım
Şimdi taşları oynatmaya hazırlanıyoruz. Her taş türü bir desenle gider. En basit desen atınki: 8 sabit
sıçrama ("L" şekli). Her sıçramayı [satır farkı, sütun farkı] diye yazacağız: [1, 2] "1 sıra aşağı, 2 sütun
sağa".
Hamleleri koda if yığını olarak değil, böyle bir veri listesi olarak yazmak işi çok kolaylaştıracak.
Köşedeki bir at bazı sıçramalarda tahtanın dışına düşer. Bunu anlamak için küçük bir yardımcı da yazacağız:
inside(r, c) "bu kare tahtanın içinde mi?"
```js
const KNIGHT = [[1, 2], [2, 1], [2, -1], [1, -2], [-1, -2], [-2, -1], [-2, 1], [-1, 2]]
const inside = (r, c) => r >= 0 && r < 8 && c >= 0 && c < 8
```const KNIGHT = [[1, 2], ...] → dizilerden oluşan bir dizi: 8 sıçrama, her biri [satır farkı, sütun farkı].
Eksi sayı yukarı ya da sola demek: [-2, 1] "2 sıra yukarı, 1 sütun sağa".const inside = (r, c) => ... → iki sayı alan kısa bir ok fonksiyonu. => sonrası doğrudan cevabıdır.r >= 0 && r < 8 && c >= 0 && c < 8 → >= "büyük ya da eşit", && "ve": dört koşulun hepsi doğruysa
cevap true (doğru), biri bile yanlışsa false (yanlış). Satır ve sütun 0–7 arasında olmalı.const START = [...] satırının hemen altına KNIGHT satırını yaz.reset fonksiyonunun kapanan }'inin altına bir boş satır bırakıp inside satırını yaz.Beceriler: Diziler ve nesneler, Fonksiyonlar
← Tekrar tekrar çiz Bir hamle listesi →