🛠️ToolsShed

BMI Calculator

メートル法・ヤード法でBMIを計算。

BMIカテゴリー

低体重< 18.5
普通体重18.5 – 24.9
過体重25 – 29.9
肥満≥ 30

BMI計算機は、体重と身長から算出された広く使われているスクリーニング数値である体格指数を計算します。BMI = 体重(kg) / 身長²(m²)。結果を低体重(18.5未満)、普通体重(18.5〜24.9)、過体重(25〜29.9)、肥満(30以上)に分類し、医療専門家と個人の両方に迅速な参考情報を提供します。

メトリック(cm/kg)またはインペリアル(ft/lb)単位で身長と体重を入力します。ツールはすぐにBMIを計算し、どのカテゴリに属するかと、あなたの身長に対する正常なBMIに相当する体重範囲を教えます。

BMIは有用な集団レベルのスクリーニングツールですが、限界があります:体脂肪を直接測定するわけではなく、アスリート(高い筋肉量)や高齢者(低い筋肉量)を誤分類する可能性があります。健康の完全な評価のために、医療提供者と結果について話し合ってください。

よくある質問

コード実装

def calculate_bmi(weight_kg: float, height_m: float) -> float:
    """Calculate Body Mass Index: BMI = weight(kg) / height(m)^2"""
    return weight_kg / (height_m ** 2)

def bmi_from_imperial(weight_lbs: float, height_in: float) -> float:
    """Calculate BMI from imperial units."""
    return (weight_lbs / (height_in ** 2)) * 703

def classify_bmi(bmi: float) -> str:
    """Classify BMI using WHO categories."""
    if bmi < 18.5:
        return "Underweight"
    elif bmi < 25.0:
        return "Normal weight"
    elif bmi < 30.0:
        return "Overweight"
    elif bmi < 35.0:
        return "Obese (Class I)"
    elif bmi < 40.0:
        return "Obese (Class II)"
    else:
        return "Obese (Class III)"

# Examples
people = [
    ("Person A", 55, 1.70),
    ("Person B", 70, 1.75),
    ("Person C", 90, 1.75),
    ("Person D", 110, 1.75),
    ("Person E", 50, 1.80),
]

print(f"{'Name':<12} {'Weight':>8} {'Height':>7} {'BMI':>6}  {'Category'}")
print("-" * 55)
for name, w, h in people:
    bmi = calculate_bmi(w, h)
    print(f"{name:<12} {w:>7} kg {h:>5} m {bmi:>6.1f}  {classify_bmi(bmi)}")

# Imperial example
bmi_imp = bmi_from_imperial(154, 68)  # 154 lbs, 5'8"
print(f"\nImperial: 154 lbs / 68 in → BMI {bmi_imp:.1f} ({classify_bmi(bmi_imp)})")

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.