本文へ移動

Kazu数

検証済みの数独や論理パズルを作り、標準の規則とヒントを読み、盤を描いたり埋め込んだりできます。

「数」は数字を表す言葉です。 名前について(英語)

目次

はじめに

はじめに

小さなナンプレを作って検証し、盤面を設置します。

小さな標準の盤から

npmで@johnmorrisdotca/kazuをインストールします。主入口には六つの数字の盤と、名前付きの他のパズルのエンジンがあります。各種類に専用の規則、描画、プレイヤーの入口もあります。

import {generateKazu,checkKazu,newKazuGame,enterNumber,decodeCells,kazuProgress} from "@johnmorrisdotca/kazu";
const puzzle = generateKazu("number-place",4,"easy",42);
const game = newKazuGame(puzzle.kind,puzzle.size,puzzle.givens)!;
const solution = decodeCells(puzzle.solution,4)!;
const cell = game.printed.cells.findIndex(value=>value===0);
console.log(checkKazu(puzzle.kind,4,puzzle.givens,puzzle.solution));
console.log(kazuProgress(enterNumber(game,cell,solution[cell])));
{ ok: true }
{ filled: 10, total: 16 }

非null表明は検証済みの生成問題に使っています。貼り付けたコードにはnullの分岐が必要です。印刷された数字と入力は別で、印刷マスの入力は0のままです。操作は新しい状態を返します。

数字の盤、他の種類、証明とヒント、埋め込みを参照してください。全種類が4×4に対応すると考えず、KAZU_SPECSを確認します。

ソースを見るGitHub で編集@johnmorrisdotca/kazu 2.1.0 のソースから作成しました。

この日本語は、まだ日本語を母語とする方の確認を受けていません。訂正を歓迎します。