科目別の週学習時間
週20時間の学習なら、4単位で難易度1.5の微積分IIに10時間、3単位の2科目に5時間ずつを配分します。単位数×難易度の比で分け、どの時間も1回だけ割り当てます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 週あたりの時間
- 20
- 科目数
- 3
- 単位数の合計
- 10
- 重みの合計
- 12
- 時間
- 10, 5, 5
仕事、通学、スポーツのある学生に空きだらけの予定表はほとんどありません。手元にあるのは週あたりの学習時間予算と、同じ労力を求めない科目一覧です。単位はすでに想定負荷を表し、難易度ウェイトは証明の多い STEM 科目が概説科目より重いことを捉えます。本科目別週学習時間計算機は、正の週時間予算と、科目名、単位、難易度倍率を持つ順序付き一覧を受け取り、各時間が一度だけ割り当てられる公正な配分を返します。
単位と難易度が週予算を分け合う仕組み
科目別の週学習時間計画は、週を固定のパイとみなし、履修中の各科目を、単位と難易度倍率の積で大きさが決まる一切れとして扱います。単位も難易度も等しければ時間も等しく、難易度がどちらも 1 なら四単位の科目は二単位の科目の二倍の時間を受けます。四単位科目の難易度を 1.5 に上げると、生の時間当て推量をしなくてもその配分が伸びます。
このスケール不変性は、学生がまず各授業の重さを話し合い、勤務表を後から固定する場合に便利です。H を十五から二十二に変えても、名簿を書き直さずに各配分が拡大縮小します。難易度を省略すると 1 になるため、単位だけの一覧でも公正に配分されます。
ゼロや負の単位・難易度は、学習週の負の一切れに学問的意味がないため拒否されます。比例乗算のあと、浮動小数点の丸めでごく小さな残差が残り、清掃後の時間がちょうど H に合わないことがあります。
活用例
実在の暦に合わせた学期計画
単位一覧と正直な週時間予算を、履修登録の変更期限前に科目ごとの学習ブロックへ落とし、仕事やスポーツで予算が変わったら再実行します。
難易度による中間試験後の立て直し
落ちている STEM 科目の難易度ウェイトを上げ、追加時間が睡眠やすでに空の週末ではなく、より軽い科目から出るようにします。
よくある質問
週の学習時間は科目間でどう分けられますか?
単位も難易度も等しければ時間も等しいです。返される時間の合計は週予算になります。
単位だけ分かって難易度が分からない場合は?
difficulty を省略するか 1 を送ってください。計算機は単位だけに従って配分します。これがカーネギー単位の通例の出発点です。
難しい科目には難易度をいくつにすればよいですか?
標準的な科目は1、理系の重い科目は1.5、特に負担の大きい科目は2が目安です。指定しなければ1として扱い、0より大きい値だけを受け付けます。
週の学習時間が足りているかはどう判断しますか?
各科目に1単位あたりの時間が表示されるので、1単位につき2〜3時間という一般的な目安と比べられます。週20時間の例では微積分IIが1単位2.5時間、3単位の科目は2時間を下回ります。
曜日ごとの学習時間も分かりますか?
分かります。実際に勉強する日数を1から7で入力すると、各科目の週の時間をその日数で割った1日あたりの時間も表示されます。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/edu/weekly-study-per-course \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"weekly_hours":20,"courses":[{"name":"Calculus II","credits":4,"difficulty":1.5},{"name":"US History","credits":3,"difficulty":1},{"name":"Spanish I","credits":3,"difficulty":1}]}'const res = await fetch("https://api.kit.forhosting.com/edu/weekly-study-per-course", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"weekly_hours": 20,
"courses": [
{
"name": "Calculus II",
"credits": 4,
"difficulty": 1.5
},
{
"name": "US History",
"credits": 3,
"difficulty": 1
},
{
"name": "Spanish I",
"credits": 3,
"difficulty": 1
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/edu/weekly-study-per-course",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"weekly_hours": 20,
"courses": [
{
"name": "Calculus II",
"credits": 4,
"difficulty": 1.5
},
{
"name": "US History",
"credits": 3,
"difficulty": 1
},
{
"name": "Spanish I",
"credits": 3,
"difficulty": 1
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/edu/weekly-study-per-course", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"weekly_hours":20,"courses":[{"name":"Calculus II","credits":4,"difficulty":1.5},{"name":"US History","credits":3,"difficulty":1},{"name":"Spanish I","credits":3,"difficulty":1}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"weekly_hours":20,"courses":[{"name":"Calculus II","credits":4,"difficulty":1.5},{"name":"US History","credits":3,"difficulty":1},{"name":"Spanish I","credits":3,"difficulty":1}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/edu/weekly-study-per-course", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"weekly_hours": 20,
"courses": [
{
"name": "Calculus II",
"credits": 4,
"difficulty": 1.5
},
{
"name": "US History",
"credits": 3,
"difficulty": 1
},
{
"name": "Spanish I",
"credits": 3,
"difficulty": 1
}
]
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "edu.weekly_study_per_course",
"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 で失敗します。
単位と難易度が週予算を分け合う仕組み
weekly_hours が H、科目 i の単位が c_i、難易度が d_i のとき、配分時間は H に (c_i かける d_i) を掛け、すべての単位×難易度の和で割った値です。本エンドポイントはその残差を正のウェイトを持つ最後の科目に吸収し、返却される hours 配列が常に要求予算の分割になるようにします。各行は hours_per_credit も報告するため、計画がよく言われる単位あたり二〜三時間の学習に近いかを確認でき、ウェイト和を再計算すべきでないグラフ向けに share_ratio と percent も付きます。
入力契約、応答の形、エラーの扱い
difficulty は任意で省略時は 1 です。指定する場合は有限かつ厳密に正で、標準科目なら 1、重い STEM 負荷なら 1.5、特に厳しい授業なら 2 が典型です。この無料 parse 経路では最大四十科目を受け付けます。並列の hours 配列は入力順に一致し、数値配分だけが必要なスクリプト向けです。古典的な確認は、四単位・難易度 1.5 の Calculus II と、三単位・難易度 1 の US History および Spanish I を置いた二十時間の週で、十、五、五時間になります。weekly_hours と courses を含む JSON 本体を POST してください。フィールド weekly_hours は、今週実際に学べる時間を表す、ゼロより厳密に大きく最大百六十八の有限数です。ゼロと負の値はフィールド名付きの invalid_input で失敗します。フィールド courses は空でないオブジェクト配列で、各要素は空でない name と有限の正の credits 数を持ちます。任意の study_days は 1 から 7 の整数です。送ると各科目に hours_per_day も付き、五日計画なら Calculus の十時間配分が平日各二時間になります。欠落フィールド、空の科目一覧、オブジェクトでない行、空白名、非有限数、正でない単位や難易度、四十行超、百六十八を超える週予算、ウェイト和ゼロはすべて invalid_input で失敗し課金されません。成功時、本体は weekly_hours をエコーし、course_count、credit_sum、weight_sum を報告し、index、name、credits、difficulty、weight、share_ratio、hours、percent、hours_per_credit を持つ courses オブジェクト配列を返します。method は credits_times_difficulty であり、formula は hours_i が weekly_hours に credits_i と difficulty_i を掛けてそれらの積の和で割った値であることを再述します。成功した API 呼び出しは公開ベース価格 $0.002 per item を使い、検証失敗はプリペイド残高を消費しません。
週学習配分が本領を発揮する場面
アカデミックアドバイザーは科目別週学習時間計算機を使い、十五単位の学期が、学生が週二十時間働いているときに黙って五十時間を要求しないようにします。中間試験の衝撃のあと GPA を立て直す学生は、落ちている科目の難易度を上げて再実行し、救援時間がすでに空の土曜日ではなく軽い科目から出るようにします。寮務と競技スタッフは同じ契約を埋め込み、学習時間が十二時間しかない遠征週でも、三単位のゼミを丸ごと落とさず全科目に何かが割り当てられるようにします。学内アプリは、ゼロ予算、全ウェイトゼロ、残差丸めといった浮動小数点の端ケースを自前で抱え込まずに済みます。同じ単位と難易度を保ち、睡眠とシフトのあとに残る時間まで weekly_hours を下げ、当て推量ではなく新しい配分を読みます。それらの経路は決定的な invalid_input または残差吸収で既に覆われているからです。
連携の活用例
進路指導窓口と LMS プラグイン
同じ単位×難易度の配分を進路指導フォームや学内アプリから呼び出し、印刷計画と学生向けウィジェットが時間で食い違わないようにします。
技術的な質問
週予算がゼロまたは負だとどうなりますか。
タスクは invalid_input で失敗します。weekly_hours はゼロより厳密に大きく最大 168 の有限数である必要があり、正でない合計は課金されません。
平日あたりの時間も見られますか。
はい。study_days を 1 から 7 の整数で送ってください。各科目に hours_per_day = その科目の週時間 ÷ study_days が付きます。週単位だけの応答にするならフィールドを省略します。
科目別週学習時間計算機の料金はいくらですか。
ブラウザの道具は無料です。API リクエストは成功した呼び出しごとにプリペイドの KIT 残高を $0.002 で使い、無効な入力は課金されません。