本文へ移動

Kazu数

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

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

目次

リファレンス · 波及効果の規則

undoRipple関数

リファレンスの説明と例は英語です。見出しと目次は日本語です。

Return the Ripple game with its previous marks or entries restored, or unchanged when there is no undo history.

インポート

import { undoRipple } from "@johnmorrisdotca/kazu/ripple";

ほかのエクスポート元: @johnmorrisdotca/kazu

定義

function undoRipple(game: RippleGame): RippleGame

引数

名前型説明
gameRippleGame

The current immutable game state.

戻り値

RippleGame

Return the Ripple game with its previous marks or entries restored, or unchanged when there is no undo history.

例

import type { RippleBoard } from "@johnmorrisdotca/kazu/ripple";
import { newRipple, undoRipple } from "@johnmorrisdotca/kazu/ripple";

const rippleBoard: RippleBoard = {"width":9,"height":9,"rooms":[0,0,0,1,1,1,2,2,2,0,0,0,1,1,1,2,2,2,0,0,0,1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,3,3,3,4,4,4,5,5,5,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8,6,6,6,7,7,7,8,8,8,6,6,6,7,7,7,8,8,8],"clues":[4,null,7,9,2,null,5,null,3,null,null,3,6,7,4,8,9,2,8,null,2,1,3,null,null,null,null,7,null,1,null,6,null,null,null,9,3,8,null,5,1,7,null,null,6,2,4,6,null,9,3,7,5,1,1,null,8,null,5,null,9,2,4,null,2,null,null,null,null,null,null,null,6,null,null,2,4,null,null,3,null]};
const rippleGame = newRipple(rippleBoard);
console.log(undoRipple(rippleGame));
{
  board: {
    width: 9,
    height: 9,
    rooms: [
      0, 0, 0, 1, 1, 1, 2, 2, 2, 0, 0, 0,
      1, 1, 1, 2, 2, 2, 0, 0, 0, 1, 1, 1,
      2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5,
      3, 3, 3, 4, 4, 4, 5, 5, 5, 3, 3, 3,
      4, 4, 4, 5, 5, 5, 6, 6, 6, 7, 7, 7,
      8, 8, 8, 6, 6, 6, 7, 7, 7, 8, 8, 8,
      6, 6, 6, 7, 7, 7, 8, 8, 8
    ],
    clues: [
      4,    null, 7,    9,    2,    null, 5,    null, 3,    null, null,
      3,    6,    7,    4,    8,    9,    2,    8,    null, 2,    1,
      3,    null, null, null, null, 7,    null, 1,    null, 6,    null,
      null, null, 9,    3,    8,    null, 5,    1,    7,    null, null,
      6,    2,    4,    6,    null, 9,    3,    7,    5,    1,    1,
      null, 8,    null, 5,    null, 9,    2,    4,    null, 2,    null,
      null, null, null, null, null, null, 6,    null, null, 2,    4,
      null, null, 3,    null
    ]
  },
  values: [
    4, 0, 7, 9, 2, 0, 5, 0, 3, 0, 0, 3,
    6, 7, 4, 8, 9, 2, 8, 0, 2, 1, 3, 0,
    0, 0, 0, 7, 0, 1, 0, 6, 0, 0, 0, 9,
    3, 8, 0, 5, 1, 7, 0, 0, 6, 2, 4, 6,
    0, 9, 3, 7, 5, 1, 1, 0, 8, 0, 5, 0,
    9, 2, 4, 0, 2, 0, 0, 0, 0, 0, 0, 0,
    6, 0, 0, 2, 4, 0, 0, 3, 0
  ],
  notes: [
    [], [], [], [], [], [], [], [], [], [], [], [],
    [], [], [], [], [], [], [], [], [], [], [], [],
    [], [], [], [], [], [], [], [], [], [], [], [],
    [], [], [], [], [], [], [], [], [], [], [], [],
    [], [], [], [], [], [], [], [], [], [], [], [],
    [], [], [], [], [], [], [], [], [], [], [], [],
    [], [], [], [], [], [], [], [], []
  ],
  history: [],
  helped: false
}

出力(このページを作ったときに実行した結果)

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

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