最大公約数の計算
整数のリストを入力すると、すべてを割り切る最大の数が分かります。12、18、24なら最大公約数は6です。最大40個まで入力でき、符号は結果を変えず、ゼロだけのリストは受け付けません。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 数値
- 12, 18, 24
- 数量
- 3
- Gcf
- 6
整数のリストにおける最大公約数とは、列挙されたすべての値を余りなく割り切る最大の正の整数です。学習者は初等の数感覚で GCF としてこの考えに出会い、比の約分、分数の既約化、測定値の共通因数の取り出しでも再び用います。この最大公約数計算機は整数のリストを受け取り、マイナス符号が答えを変えないよう各項の絶対値を取り、ユークリッドの互除法でリストを縮めてただ一つの正の因数を残します。
最大公約数とは何か、互除法がどう求めるか
二つ以上の整数の最大公約数は、列挙されたすべての値を余りなく割り切る最大の正の整数です。学校では GCF や HCF、最大公約数と呼び、数論では同じ対象を最大公約数と呼びます。符号は因数を変えません。
12 と −18 は因数 6 を共有します。割り切れるかどうかは絶対値で定義されるからです。0 はどの整数でも割り切れるので、0 と 12 の最大公約数は 12 です。
しかし 0 だけからなるリストには正の共通因数がなく、拒否されます。ユークリッドの互除法は素因数を並べずに二数の最大公約数を求めます。対 a と b について、余りが 0 になるまで a を b に、b を a を b で割った余りに置き換え、最後の 0 でない余りが gcd(a, b) です。
結合法則により同じ手順をリストへ畳み込めます。gcd(a, b, c) は gcd(gcd(a, b), c) に等しいです。例: 12、18、24。
gcd(12, 18) は 6 です。18 は 1 かける 12 足す 6、12 は 2 かける 6 足す 0 だからです。続いて gcd(6, 24) も 6 です。
この能力はその正の 6 を返し、負の因数も入力の水増し積も返しません。素因数分解でも同じ答えになりますが、大きな絶対値では遅く、共有する素数を落とす誤りも起きやすいです。互除法は余りだけを使い、契約内の安全な整数では常に正確です。
整数が一つだけのリストも許されます。その値の最大公約数は絶対値であり、どの整数も自分自身を割り切るという定義と一致します。
入力契約、応答の形、誤りの扱い
1 個から 40 個までの整数の配列です。整数でない項目があれば、値は整数でなければならないという明確なメッセージで拒否し、その失敗は課金しません。0 だけのリストは、0 が正の因数ではないため拒否します。
0 と 0 でない整数を混ぜるのは有効で、0 でない項の最大公約数を返します。例: 12、18、24 は gcf 6 です。例: −48、18、30 も gcf 6 です。
最小公倍数も必要ならご自身の LCM 手順と組み合わせてください。
最大公約数が役立つ場面
教室や家庭教師の基盤は、学習者が素数を手で並べず、マイナス符号が因数を変えないことを忘れずに互除法の手順を検算できるよう、最大公約数計算機を使います。試験問題の生成器には、空リストや 12.5 のような小数を、黙って切り捨ててそれらしい誤った GCF を返すのではなく、無効入力として印をつける決定的な神託が必要です。
表計算やノートの流れでは、格子の再縮尺、等しいグループへの梱包、混在単位の共通刻みへの変換の前に、整数測定の列の最大公約数がしばしば要ります。検証失敗は残高を消費しません。
40 整数の上限内に要求を収め、テストで整数の gcf を固定すれば、宿題、LMS 拡張、エッジワーカー向けに再現可能な共通因数が得られ、ご自身で記号計算の基盤を立てる必要はありません。
活用例
教室と宿題の検算
学習者に整数のリストを送らせ、授業で教えたユークリッド法に照らして正の最大公約数を確かめさせます。符号が混在するリストも含みます。
試験と LMS の自動採点
空リストや整数でない項目を拒否し、小数を黙って誤答へ切り捨てない決定的な神託で GCF 問題を採点します。
比の約分とグループ化のスクリプト
比を約分し、等しいグループに梱包し、格子を再縮尺する前に、整数測定の列の共通因数を、計算機代数ライブラリなしで求めます。
よくある質問
整数リストの最大公約数はどう計算しますか?
各整数の絶対値を取り、ユークリッドの互除法をリストへ畳み込みます。
リストが空、または整数でない項目を含むとどうなりますか?
空のリストと整数でない項目(小数、真偽値、オブジェクト)は拒否され、課金されません。
負の数は最大公約数を変えますか?
変えません。 割り切れは絶対値を使うので、GCF は常に正の整数として返されます。−12 と 18 の最大公約数は 6 で、12 と 18 と同じです。
互いに素な整数、または整数一つの最大公約数は何ですか?
8 と 15 のように互いに素な整数の最大公約数は 1 です。整数一つのリストは許され、その値の最大公約数は絶対値です。0 だけのリストは、0 が正の因数ではないため拒否されます。
リストにゼロが含まれるとどうなりますか?
ゼロはどの整数でも割り切れるため、結果は変わらず、ほかの数から最大公約数を求めます。ゼロだけのリストは正の公約数がないので受け付けません。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/math/greatest-common-factor \
-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/greatest-common-factor", {
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/greatest-common-factor",
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/greatest-common-factor", 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/greatest-common-factor", 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.greatest_common_factor",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_items | 40 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
空のリストと整数でない項目は、空のゼロではなく invalid_input で拒否されます。検証失敗は課金されず、成功した呼び出しは公開の基本料金 $0.002 を使い、モデルトークンも外向き通信もありません。
入力契約、応答の形、誤りの扱い
必須フィールド numbers を一つ持つ JSON 本体を POST してください。各項目は JSON 整数でも、先頭符号つきの整数の十進文字列でも構いません。真偽値、オブジェクト、分数、科学表記、Infinity、NaN はインデックスを名指しして invalid_input になります。numbers が欠けている、配列が空、または 40 件を超える場合は invalid_input です。成功時の本体は、入力順と元の符号のまま解析した integers である numbers、その長さ count、正の最大公約数 gcf、絶対値の gcd を互除法で求めるという文字列 formula を返します。このエンドポイントは正の共通因数だけを返し、素因数、因数の木、formula 欄を超える余りの表は出しません。
最大公約数 API が役立つ場面
比の約分や分数の既約化を求めるプリントや LMS の拡張は、まずこのエンドポイントを呼び、正の因数を示してから既約形を問うことで、GCF の段階の採点と割り算の段階の採点を分けられます。短い余りのループのために計算機代数の全体を引き込む代わりに、小さな parse API を呼べば足ります。実装は純粋な parse の tier A なので、成功した呼び出しは毎回、公開の基本料金 $0.002 で、モデルトークンも外向き通信もありません。
技術的な質問
最大公約数計算機の料金はいくらですか。
ブラウザの道具は無料です。API 要求は成功した呼び出しごとに前払いの KIT 残高から $0.002 を使い、無効な入力は課金されません。