Atölye › Sudoku › 23/28. adım

İpuçları

Ne yapıyoruz

Takıldın mı? H tuşu çözümden bir hücre doldursun: seçili hücre boş ya da yanlışsa onu, değilse ilk boş ya da yanlış hücreyi. Kaç ipucu alındığı da sayılsın (rekorda işe yarayacak).

```js
let hints
  hints = 0

// A hint fills the selected cell (or the first empty one) from the solution.
function hint() {
  if (won) return
  let cell = grid[selected.r][selected.c] === solution[selected.r][selected.c] ? null : selected
  for (let i = 0; i < 81 && !cell; i++) {
    const r = Math.floor(i / 9)
    const c = i % 9
    if (grid[r][c] !== solution[r][c]) cell = { r, c }
  }
  if (!cell) return
  selected = cell
  grid[cell.r][cell.c] = solution[cell.r][cell.c]
  hints += 1
  checkWin()
}

  else if (event.key === 'h' || event.key === 'H') hint()
```

Ne işe yarıyor

Sıra sende

  1. let won satırının altına let hints yaz; reset'in sonuna hints = 0 ekle.
  2. enter fonksiyonunun altına yorumu ve hint fonksiyonunu yaz.
  3. keydown zincirinin sonuna H satırını ekle.
  4. Çalıştır ve H'ye bas.

Beceriler: Oyun durumları, Klavye ve fare girdisi

Tüm adımlar

  1. Dokuza dokuz
  2. Çizgiler ve kutular
  3. Metinden bir bulmaca
  4. Bulmacanın kendi rakamları
  5. Çizmeye devam
  6. Seçili hücre
  7. Satırı, sütunu ve kutuyu aydınlat
  8. Her yerde aynı rakam
  9. Tıklayarak seç
  10. Oklarla gez
  11. Rakam yaz
  12. Tek döngüde üç kural
  13. Hataları göster
  14. Çözüldü!
  15. Saat
  16. Çözüldü mesajı
  17. Yeniden oyna
  18. En kolay hücre
  19. Çözücü
  20. Rastgele sıra
  21. Bulmaca icat et
  22. Her oyunda yeni bulmaca
  23. İpuçları
  24. En iyi süre
  25. Yeni bulmaca için N
  26. Rakam tuş takımı
  27. Tuş takımına dokun
  28. Kendin yap: geri al