最小公倍数の計算
整数のリストを入力すると、すべての数で割り切れる最小の正の数である最小公倍数が分かります。12、18、24なら72です。負の符号は無視され、1つのリストに32個まで入れられます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 数値
- 12, 18, 24
- 数量
- 3
- Lcm
- 72
整数のリストに対する最小公倍数とは、掲載されたどの値でも余りなく割り切れる、最も小さい正の整数です。生徒は分母の異なる分数の加減に使い、技術者は周期、歯車の歯数、サンプリング窓の揃えに使い、プログラマはタイル・バッファ・定期ジョブの周期を決めて複数のループが再び出会うように使います。負の入力は符号が割り切れに無関係なため絶対値へ還元します。0 は拒否します。 正の整数は 0 では割り切れません。
最小公倍数とは何か、なぜ一意なのか
整数 a1、a2 から ak までの最小公倍数(LCM)は、各 ai が m を割り切るような最小の正の整数 m です。言い換えると、m はリスト全体の最小の正の公倍数です。2 値については、一意分解から恒等式 lcm(a, b) が a と b の積の絶対値を gcd(a, b) で割ったものに等しいことが従います。
gcd が数える共有素因数のべきを打ち消したあと、積が各素数の最大指数を復元します。この恒等式は結合法則で長いリストへ伸びます。lcm(a, b, c) は lcm(a, b) と c の最小公倍数です。
1 要素のリストも許され、その最小公倍数はその整数の絶対値、つまり自身の最小の正の倍数です。互いに素な 2 整数の最小公倍数は絶対値の積に等しいので、互いに素な周期はその積でしか重なりません。符号は最小公倍数を変えません。
−12 と 18 の最小公倍数は 12 と 18 と同じです。正の整数が −12 で割り切れるのは 12 で割り切れるときに限ります。0 は別です。 m が 0 で割り切れると言えば 0 が m を割る必要があり、それは m が 0 のときに限り、0 は正ではありません。
そこでこの電卓は、正の整数という定義に反する慣例の 0 を返す代わりに、0 を含むリストを拒否します。結果は一意です。 最小の正の公倍数は高々 1 つであり、0 でない整数の有限リストでは必ず存在します。
入力契約、ユークリッド畳み込み、誤り時の振る舞い
空でない整数配列です。 各要素は整数でなければなりません。12.5 のような小数、真偽値、オブジェクト、null、非数値文字列などの非整数も失敗し、修正できるよう問題の要素を指名します。
各絶対値は JavaScript の安全整数でなければならず、畳み込んだ最小公倍数が MAX_SAFE_INTEGER を超えると、近くの浮動小数へ丸めて黙って偽る代わりにタスクは失敗します。成功時は解析した numbers をエコーし、count を報告し、正の整数結果として lcm を返します。
例: numbers が 12, 18, 24 なら lcm は 72 です。72 はそれぞれで割り切れ、より小さい正の整数では割り切れません。例: numbers が 7 なら 7 です。
例: numbers が −4, 6, 8 なら 24 です。検証失敗は課金されません。
最小公倍数電卓が役立つ現場
教室や学習支援の基盤は、学習者が手で素因数分解せずに共通分母や周期の問題を確認できるよう、最小公倍数電卓を呼びます。試験ジェネレータは、空リストや非整数を拒否する決定的なオラクルを必要とし、欠陥のある採点器が成功とみなし得る既定値を捏造してはなりません。
運用とスケジュールの道具は、シフト交代・保守窓・ポーリング間隔など複数の周期長の最小公倍数を取り、すべての時計が揃う最初の瞬間を求めます。デジタルデザインとゲームの道具は、複数のフレーム数に合うスプライトシートの歩幅やタイルサイズを選ぶために最小公倍数を使います。
信号処理ノートは、再標本化ループが整数境界で閉じる必要があるとき、サンプル数やホップサイズの最小公倍数を取ります。「検索意図が最小公倍数だけであるときにこの能力を選び、最大公約数と最小公倍数の一体ダンプや素因数分解エクスプローラは別にしてください。
活用例
分数計算での共通分母
複数の分母の最小公倍数を求め、加減と比較が一つの正確な下項を共有するようにします。
繰り返す予定の揃え
シフト長、保守周期、ポーリング間隔の最小公倍数を取り、すべての周期が重なる最初の瞬間を計算します。
タイル、バッファ、アニメの歩幅
パイプライン内の各フレーム数やブロックサイズの倍数になるバッファ幅、タイル幅、スプライトシート幅を選びます。
よくある質問
この電卓は最小公倍数をどのように求めますか?
リストにユークリッド gcd を畳み込み、BigInt 演算で lcm(a, b) = |a / gcd(a, b) * b| を適用し、正の結果を lcm として返します。
負の整数は使えますか?
使えます。 正の整数が −n で割り切れるのは n で割り切れるときに限るため、符号は無視されます。返す lcm は常に正です。
リストにゼロを入れられないのはなぜですか?
どんな正の数もゼロでは割れないため、ゼロを含むリストには通常の意味での最小公倍数がないからです。便宜上の0を返す代わりに、ゼロを取り除くよう案内します。
分数の足し算に最小公倍数はどう役立ちますか?
分母の最小公倍数が、最も小さい共通の分母になります。1/3と1/4なら12なので、4/12と3/12に直して分子を足すと7/12になります。
共通の約数がない2つの数の最小公倍数は?
2つの数の積になります。2と5には共通の約数がないので最小公倍数は10です。2日ごとの作業と5日ごとの作業が同じ日に重なるのも10日ごとです。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/math/lcm \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"numbers":[12,18,24]}'const res = await fetch("https://api.kit.forhosting.com/math/lcm", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"numbers": [
12,
18,
24
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/lcm",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"numbers": [
12,
18,
24
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/lcm", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"numbers":[12,18,24]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"numbers":[12,18,24]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/lcm", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"numbers": [
12,
18,
24
]
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.lcm",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_items | 32 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
この電卓は整数の JSON リストを受け取り、空リストと整数でない要素を拒否し、その一意な正の最小公倍数を返します。成功した API 呼び出しは $0.002、不正な入力は課金されません。
入力契約、ユークリッド畳み込み、誤り時の振る舞い
必須フィールド numbers を 1 つ持つ JSON オブジェクトを POST してください。JSON 整数、整数値の Number、BigInt、または符号任意の数字列です。空配列は invalid_input で失敗します。この API では引数ゼロの最小公倍数は定義しません。リストは最大 32 個までなので、1 回の Worker 要求は安く済みます。成功した呼び出しの公表 API 料金は $0.002 です。
最小公倍数電卓が役立つ現場
リストを空にせず、各要素を整数に保ち、invalid_input を再試行ではなく依頼側の修正として扱い、計算機代数系を立てずに LMS プラグイン、ノート、エッジワーカ向けの再現可能な最小公倍数が得られます。実装は純粋な parse の tier A なので、成功した呼び出しは毎回公表の $0.002 で、モデルトークンも外向きネットワークもありません。
技術的な質問
numbers リストが空だとどうなりますか。
タスクは invalid_input で失敗します。この API は整数を少なくとも 1 つ要求し、空リストの最小公倍数はありません。
なぜ 0 を拒否するのですか。
正の整数は 0 では割り切れません。0 を返すと「最小の正の整数」という定義に反するので、0 は invalid_input です。
最小公倍数電卓の料金はいくらですか。
ブラウザの道具は無料です。API 要求は成功した呼び出しごとに前払い KIT 残高から $0.002 を使い、不正な入力は課金されません。