同じ配置を再現できるシード指定ビンゴカード生成
シード2026で5 × 5、数字1から75を指定すると、毎回同じカードになり、中央のフリースペースを囲んで24個の異なる数字が並びます。シードと設定を残しておけば、ゲーム会や解答用、授業用に同じカードを刷り直せます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
同じシードと設定を使うたびに、まったく同じ配置になるビンゴカードを生成できます。行数と列数、使用する整数の範囲を指定すると、重複のない値を並べた盤面が返されます。両方のサイズが奇数の場合は、中央のマスが自動的にフリースペースになります。すべての数字入りマスを埋められる範囲かどうかも事前に検証されるため、ゲーム、印刷教材、授業用課題、安定したテストデータなどに安心してご利用いただけます。
盤面サイズと十分な数値範囲を指定します
最初に行数と列数を指定してください。一般的なビンゴカードは5行5列ですが、長方形の盤面にも対応しており、各サイズは1から100まで選べます。次に、使用できる最小整数と最大整数を入力します。
両端の値も範囲に含まれるため、最小値が1、最大値が75なら、候補は75個です。数字入りの各マスには固有の整数が入り、同じカード内で値が重複することはありません。行数と列数がどちらも奇数なら、中央には文字列FREEが入り、必要な数字が1個減ります。
そのため、5行5列では24個、4行5列では20個の数字が必要です。範囲が足りない場合は、重複や未完成の盤面を返さず、理由を示すエラーになります。処理量を一定に保つため、各サイズの上限は100、範囲に含められる整数は最大100000個です。
下限と上限が正しい順序であれば、負の整数や0もご利用いただけます。
シードから同じカードを正確に再現します
シードは並べ替えを制御する安全な整数として指定してください。行数、列数、最小値、最大値、シードがすべて同じなら、アルゴリズムは常に同じ位置へ同じ数字を配置します。外部の乱数サービス、現在時刻、ブラウザーのエントロピー、ネットワーク状態は利用しません。
このため、保存したゲーム、テストの自動化、解答表、再印刷が必要な制作物などに適しています。シードだけを変えると通常は別の配置になり、範囲やサイズを変えると候補集合やマス数も変化します。完全に再現する必要がある場合は、5つの入力項目すべてをカードのレシピとして保存してください。
シードは再現性を得るための値であり、機密情報ではなく、暗号学的な予測困難性を保証するものでもありません。固定された決定論的な疑似乱数列を使い、整数の候補を偏りのないFisher–Yates方式で並べ替えます。
結果を表示、配布、検証します
表の描画、PDFの作成、別システムへの取り込みでは、この型の違いを維持してください。フリースペースが置かれるのは行数と列数が両方とも奇数のときだけです。その場合に限り、中央のマスが1つに決まるためです。
どちらかが偶数なら、すべての位置に数字が入ります。ゲームを始める前に、サイズと範囲を固定し、参加者ごとに異なるシードを記録してカードを生成してください。作成済みファイルを保存しなくても、入力から問題になったカードを再現できます。
教材ではシードを解答と一緒に保存しておくと、後から同じ資料を作り直せます。検証エラーには、不正なサイズ、安全でない数値、逆転した上下限、過大または不足した範囲が示されるため、配布前に設定を修正していただけます。
活用例
再現可能なゲームを運営する
参加者ごとのシードを保存し、確認や再印刷の際にまったく同じカードを復元できます。
授業用ワークシートを作る
一貫した中央フリーマスを持つ数値盤面を生成し、設定を解答と一緒に保管できます。
決定論的なテストデータを用意する
安定したカードで表表示、書き出し、勝利判定、状態保存をテストし、偶然による失敗を防げます。
よくある質問
中央がフリースペースになる条件は何ですか?
行数と列数が両方とも奇数なら中央にFREEが入ります。どちらかが偶数なら、すべてのマスが数字になります。
同じカード内で数字が重複することはありますか?
いいえ。 指定された両端を含む範囲から、重複しないように値を選びます。
同じシードなら常に同じカードになりますか?
はい。 行数、列数、最小値、最大値、シードがすべて同じ場合に限り、同じ結果になります。
5×5以外のカードも作れますか?
はい。行数と列数はそれぞれ1から100まで指定でき、長方形のカードも作れます。中央が空くのは行数と列数がどちらも奇数のときだけで、そのときにだけ中心のマスが1つに決まるためです。
数字の範囲が狭すぎるとどうなりますか?
数字を重複させたり空欄を残したりせず、カードは作成されません。5×5のカードには24個、4×5のカードには20個の数字が必要で、範囲の両端の数字も含めて数えます。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/game/bingo-card-seeded \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"rows":5,"columns":5,"min_number":1,"max_number":75,"seed":2026}'const res = await fetch("https://api.kit.forhosting.com/game/bingo-card-seeded", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"rows": 5,
"columns": 5,
"min_number": 1,
"max_number": 75,
"seed": 2026
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/game/bingo-card-seeded",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"rows": 5,
"columns": 5,
"min_number": 1,
"max_number": 75,
"seed": 2026
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/game/bingo-card-seeded", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"rows":5,"columns":5,"min_number":1,"max_number":75,"seed":2026}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"rows":5,"columns":5,"min_number":1,"max_number":75,"seed":2026}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/game/bingo-card-seeded", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"rows": 5,
"columns": 5,
"min_number": 1,
"max_number": 75,
"seed": 2026
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "game.bingo_card_seeded",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
シードから同じカードを正確に再現します
出力には設定値、中央がフリーかどうか、表示や書き出しに使える完成済みのcardフィールドが含まれます。
結果を表示、配布、検証します
cardフィールドは行の配列で、それぞれの行もマスの配列です。数字入りのマスはJSONの数値で、自動設定された中央マスはJSON文字列のFREEです。APIによる自動生成はカード1回につき$0.002で、ファイルのアップロードや外部サービスは不要です。
技術的な質問
APIリクエスト1回の料金はいくらですか?
APIで生成するカード1枚の料金は$0.002です。
数値範囲が狭すぎる場合はどうなりますか?
利用可能な値の数と必要な数字入りマス数を示すinvalid_inputエラーが返されます。