Atölye › OutRun Tarzı Yarış › 30/44. adım
"O araba ne kadar önümde?" Düz bir yolda cevap b - a. Ama pistimiz dönüyor: 159 900'deyken 100'deki araba aslında
hemen önümüzde, sadece 200 birim ileride. b - a ise kocaman bir eksi sayı verir.
ahead(a, b) (önde) "a'dan ileri doğru giderek b'ye kaç birim var?" sorusunu cevaplar; sonuç hep 0 ile pist
uzunluğu arasında olur.
```js
// Distance from a to b going forwards along the looping track.
const ahead = (a, b) => (((b - a) % trackLength) + trackLength) % trackLength
```(b - a) % trackLength → farkı pist uzunluğuna göre kalana indirir. Ama dikkat: JavaScript'te eksi sayının kalanı
eksi kalır: -30 % 100 → -30.+ trackLength → eksiyi artıya çevirir: -30 + 100 → 70.% trackLength → fark zaten artıysa (ör. 30 + 100 = 130) onu yine pistin içine indirir: 30.const segmentAt = ... satırının hemen altına yorum satırını ve ahead satırını yaz. Çalıştır: ekran değişmez.
Beceriler: Tipler ve değerler
← Rakip arabalar Uzaklaştıkça küçülen arabalar →