ネーゲレ則の出産予定日計算機
最終月経が2026年1月1日に始まった場合、出産予定日は280日後の2026年10月8日です。ネーゲレ則では、その開始日に1年を足し、3か月を引いて、7日を足します。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 最終月経の初日
- 2026-01-01
- 予定日
- 2026-10-08
- 妊娠日数
- 280
ネーゲレの法則は、最終月経の初日を出産予定日に換算するために、臨床医と妊娠アプリが今なお教える古典的なベッドサイド手法です。本計算機はそのLMPを厳格なYYYY-MM-DD文字列として受け取り、教科書どおりの変換—1年を加え、3か月を引き、7日を加える—を純粋な暦算術で適用し、推定分娩日、結果として得られる妊娠日数、短い手順一覧、回答の横に表示できる式文字列を返します。壁時計も、タイムゾーンのずれも、乱数シードもありません。問診票、産科の日付演習、超音波で計画を精緻化する前に透明なネーゲレ基準が必要な自動化にご利用ください。
ネーゲレ則が計算するものと、lmpだけが必須である理由
ネーゲレの法則は、二十八日周期で十四日頃に排卵するという単純化の前提の下、最終月経の初日から分娩予定日を推定します。教科書や院内ポスターに今も残る形では、そのLMPの日を取り、満一年を加え、三か月を引き、七日を加え、結果の月の長さを超えた日を正規化します。Date.nowは呼ばず、サーバーのタイムゾーンに依存せず、周期長を黙って補正しません。
多くの一般的なLMPでは日数は二百八十日となり、LMPから四十週という慣例の産科カウントと一致しますが、うるう年や月長の境界では、素朴な固定オフセットと比べて一〜二日ずれることがあり、だからこそ定数を盲目的に足すのではなく暦形式に従います。これは日付推定のみであり、診断でも、その日に分娩するという保証でも、超音波による臨床的日付決定の代替でもありません。
ネーゲレ則が役立つ場面
妊娠の問診票や産科予約フローでは、超音波ファイルを添付する前に、患者がLMPを入力した瞬間に一次の推定予定日が必要になることがよくあります。本計算機を組み込めば、公開された式と手順一覧付きの透明なネーゲレ基準が得られ、看護師やプロダクト文案がブラックボックスの日付ライブラリを分解せずに引用できます。
保管されたLMP列からEDDを再計算する集団健康スクリプトや研究パイプラインは、完全な産科ライブラリを持ち込まず、夏時間境界付近でずれるホストのDate実装に頼らずに、同じ純粋関数をバッチ処理できます。エンジンは解析ティアAの分析作業—少数の整数検証と暦ロール—のため、遅延は低くコストモデルは平坦です。
臨床方針が求める場合は超音波日付を優先し、ネーゲレ出力は常にそうであった慣例の暦推定—単純で説明可能で決定的—として扱ってください。
活用例
産科の問診と予約
WebフォームのLMP欄から一次のEDDを計算し、超音波で日付が確定する前にネーゲレ式を結果の横に表示します。
教室と試験対策
厳格なYYYY-MM-DD入力と、存在しない暦日を拒否する決定的オラクルで、学生がネーゲレ則を練習できます。
LMPアーカイブの一括処理
保存済みLMP列から研究やスケジュール用の推定予定日を、タイムゾーン依存のDateライブラリなしで再計算します。
よくある質問
出産予定日のネーゲレ則とは何ですか?
古典的なネーゲレ則は、LMPの初日に一年を加え、三か月を引き、七日を加えてEDDを推定し、月長とうるう年に応じて暦を正規化します。
周期の長さは結果を変えますか?
いいえ。 本能力は教科書どおりのネーゲレをLMPのみから適用します。周期補正が必要なら別ツールを使ってください。
予定日がいつもちょうど280日後にならないのはなぜですか?
決まった日数を足すのではなく、暦に沿って計算するためです。月の長さやうるう年で1〜2日ずれることがあり、2026年1月1日からならちょうど280日になります。
超音波で別の予定日が出たらどうなりますか?
ネーゲレ則は最終月経からの最初の目安で、規則的な周期を前提にしています。超音波による日付が分かればそちらで補正され、どちらもその日の出産を保証するものではありません。
存在しない日付を入力するとどうなりますか?
別の日付に置き換えず、受け付けません。2月30日や、うるう年でない年の2月29日は入力できないので、正しい日付に直してください。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/health/due-date-naegele \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"lmp":"2026-01-01"}'const res = await fetch("https://api.kit.forhosting.com/health/due-date-naegele", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"lmp": "2026-01-01"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/health/due-date-naegele",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"lmp": "2026-01-01"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/health/due-date-naegele", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"lmp":"2026-01-01"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"lmp":"2026-01-01"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/health/due-date-naegele", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"lmp": "2026-01-01"
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "health.due_date_naegele",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
必須のlmpが欠落しているか実在しない暦日の場合、日付を捏造せずinvalid_inputで失敗します。
ネーゲレ則が計算するものと、lmpだけが必須である理由
この暦変換を本エンドポイントはバイト単位で実装します。必須フィールドはlmpのみで、患者が報告した最終月経の出血初日を示すYYYY-MM-DD形式のISO暦日です。ハンドラはその一日から年・月・日を整数として再構築し、うるう年の二月二十九日を含む月内の実在日かを検証し、三段階のネーゲレ手順を適用してdue_dateを同じISO形で出力します。応答は正規化済みのlmpも返し、methodをnaegeleとラベルし、formulaをEDDはLMPに一年を加え三か月を引き七日を加えたもの、と再掲し、gestation_daysをLMPとEDDの間の暦日の整数日数として報告し、UIが再導出せずに算数を示せるよう読みやすい手順を列挙します。
入力契約、検証、応答形、決定的エラー
月は一から十二、日はその月に実在する必要があります。二千二十六年二月三十日のような値は二月に三十日がないため拒否され、二千二十三年二月二十九日はグレゴリオ規則でうるう年でないため拒否されます。テストに固定すれば、暦算術の偶発的な書き換えを検出できます。壁時計タイムスタンプ、タイムゾーン、周期長はこの能力に送らないでください—それらは別ツールの領域です。本ページは意図的に、教科書どおりのLMPからEDDへのネーゲレ変換のみです。必須フィールドlmpが、四桁・ハイフン・二桁の月・ハイフン・二桁の日という厳格パターンに一致する文字列であるJSONオブジェクトをPOSTしてください。エイリアスlast_menstrual_period、lmp_date、period_startは受け付けられ、同じ解析経路に写像されるため、フォームや連携は好みの名前を保てます。lmpの欠落、null、空文字、非文字列オブジェクト、パターン不一致の文字列はいずれも、フィールド名と期待形を示したinvalid_inputを投げます。成功時の本文には常にlmp、due_date、method、formula、gestation_days、stepsが含まれ、任意のnullフィールドは埋められません。例:lmpが二千二十六年一月一日なら、古典変換でdue_dateは二千二十六年十月八日となり、methodはnaegele、結果の横に表示できるformula文字列が付きます。検証失敗は課金されないため、敵対的または不完全なペイロードを前払い残高を使わずに試せます。
技術的な質問
必須の入力フィールドはどれですか?
lmp(YYYY-MM-DD)のみです。エイリアスlast_menstrual_period、lmp_date、period_startも受け付けます。欠落または空のlmpはinvalid_inputを返し、課金されません。
なぜgestation_daysが280とわずかに異なることがありますか?
実装は盲目的な+280日オフセットではなく、ネーゲレ則の暦形式に従います。月長とうるう日により、一部のLMP開始では整数日数の幅がわずかに変わり得ます。
ネーゲレ出産予定日計算機の料金は?
ブラウザウィジェットは無料です。API呼び出しは成功タスクあたり$0.002の前払いKIT残高を使用し、無効入力は課金されません。