Skip to content
ブログに戻る
チュートリアル

単位変換ガイド:長さ・重さ・温度・体積の公式とコード例

メートル法とヤード・ポンド法の変換を完全解説。長さ・重さ・温度・体積の正確な公式、コード例、早見表付き。

14分で読めます

単位変換の完全ガイド:公式・コード・ツールを網羅

レシピに「350°F」と書いてあるが摂氏しか分からない。配送ラベルに「22 lbs」とあるがシステムはキログラムを要求する。クライアントがフィートで寸法を送ってきたがCADソフトはメートルを使う。単位変換は些細なことに思えるが、間違えると被害は大きい――料理の失敗程度で済めばいいが、3億2700万ドルの火星探査機が墜落した例もある。

本記事では最も頻繁に変換する4種類の測定値――長さ、重さ、温度、体積――を取り上げ、正確な公式、JavaScriptとPythonのコード、暗算用の早見表を提供する。

なぜ単位変換でまだミスが起きるのか

単位エラーは過去の問題だと思うかもしれない。そうではない。

1999年、NASAの火星気候探査機(Mars Climate Orbiter)が火星大気圏で分解した。原因:一方のチームがポンド力・秒を使い、もう一方がニュートン・秒を使っていた。数ヶ月の軌道計算で誰も不一致に気づかなかった。損失:3億2760万ドル。

1983年、エア・カナダ143便(「ギムリー・グライダー」)が飛行中に燃料切れを起こした。地上スタッフが燃料をポンドで計算し、機体システムはキログラムを前提としていたため、実際の搭載量は必要量の半分以下だった。

日常的によくあるミス:

  • USガロン ≠ 英ガロン。 約20%の差がある。どちらのガロンか分からなければ燃費比較は無意味。
  • トロイオンス ≠ 常衡オンス。 金価格の「1オンスあたり」はトロイオンス(31.1 g)であり、キッチンスケールの常衡オンス(28.35 g)ではない。
  • 温度変換は単純な掛け算ではない。 オフセットがあり、忘れると大きく間違える。

メートル法 vs ヤード・ポンド法:2つの体系、1つの地球

項目メートル法(SI)ヤード・ポンド法
設計原理十進法――10の累乗で単位が変わる不統一――12 in/ft、3 ft/yd、5,280 ft/mi
長さメートル (m)フィート (ft)、インチ (in)、マイル (mi)
質量キログラム (kg)ポンド (lb)、オンス (oz)
温度摂氏 (°C)、ケルビン (K)華氏 (°F)
体積リットル (L)ガロン (gal)、パイント (pt)、カップ
使用国世界の約95%アメリカ、ミャンマー、リベリア

メートル法は国際度量衡局(BIPM)が管理している。2019年以降、SI基本単位7つすべてが光速やプランク定数などの物理定数で定義されている。

ヤード・ポンド法には実は2つの変種がある:米国慣用単位(US customary)と英帝国単位(Imperial)。名前が同じでも定義が異なる単位があり、ガロンと液量オンスがその典型例だ。

なお、日本には伝統的な「尺貫法」もある。1尺 = 約30.3 cm、1貫 = 3.75 kg。現在は法律上メートル法が標準だが、建築や和裁などの分野では今でも使われている。

長さの変換:公式とコード

長さは最も頻繁に変換される測定タイプだ。長さ変換ツールで即座に結果を得るか、以下の公式をコードに組み込める。

主要な換算係数

すべて正確な値で、1959年の国際ヤード・ポンド協定で定められた:

変換係数精度
インチ → センチメートル× 2.54正確
フィート → メートル× 0.3048正確
ヤード → メートル× 0.9144正確
マイル → キロメートル× 1.609344正確
海里 → メートル× 1,852正確

コード実装

JavaScript:

const lengthConvert = {
  inToCm:  (inches) => inches * 2.54,
  cmToIn:  (cm)     => cm / 2.54,
  ftToM:   (feet)   => feet * 0.3048,
  mToFt:   (m)      => m / 0.3048,
  miToKm:  (miles)  => miles * 1.609344,
  kmToMi:  (km)     => km / 1.609344,
};

console.log(lengthConvert.inToCm(27));   // 68.58 (27インチモニター)
console.log(lengthConvert.miToKm(26.2)); // 42.164928 (マラソン)

Python:

def inches_to_cm(inches: float) -> float:
    return inches * 2.54

def feet_to_meters(feet: float) -> float:
    return feet * 0.3048

def miles_to_km(miles: float) -> float:
    return miles * 1.609344

print(inches_to_cm(27))    # 68.58
print(miles_to_km(26.2))   # 42.164928

暗算テクニック

  • インチ→cm: 2.5を掛ける。誤差はわずか1.6%。
  • マイル→km: フィボナッチ数列を使う。5 mi ≈ 8 km、8 mi ≈ 13 km、13 mi ≈ 21 km。
  • フィート→メートル: 3.3で割る。6フィートは約1.82 m。

早見表:長さ

ヤード・ポンド法メートル法
1インチ2.54 cm
1フィート30.48 cm
6フィート1.8288 m
1ヤード0.9144 m
1マイル1.609 km
1海里1.852 km

重さの変換:公式とコード

重さ変換ツールでオンライン変換できる。

主要な換算係数

変換係数
キログラム → ポンド× 2.20462
ポンド → キログラム× 0.453592
オンス(常衡) → グラム× 28.3495
トロイオンス → グラム× 31.1035
ストーン → キログラム× 6.35029

トロイオンスの罠

貴金属や金融データを扱う場合は要注意:トロイオンス(31.1035 g)は標準的な常衡オンス(28.3495 g)より約10%重い。金・銀・プラチナの価格は常にトロイオンスで表示される。

コード実装

JavaScript:

const weightConvert = {
  kgToLbs:    (kg)  => kg * 2.20462,
  lbsToKg:    (lbs) => lbs * 0.453592,
  ozToGrams:  (oz)  => oz * 28.3495,
  stoneToKg:  (st)  => st * 6.35029,
};

console.log(weightConvert.kgToLbs(70));    // 154.3234
console.log(weightConvert.ozToGrams(8));   // 226.796

Python:

def kg_to_lbs(kg: float) -> float:
    return kg * 2.20462

def oz_to_grams(oz: float) -> float:
    return oz * 28.3495

print(kg_to_lbs(70))    # 154.3234

暗算テクニック

kgをポンドに: 2倍にして10%を足す。例:70 kg → 140 + 14 = 154ポンド(正確値:154.32)。

早見表:重さ

ヤード・ポンド法メートル法
1オンス28.35 g
1ポンド453.6 g
1ストーン(14ポンド)6.35 kg
1ショートトン(2,000ポンド)907.2 kg
1トロイオンス31.10 g

温度の変換:唯一「足し算」が必要なタイプ

長さ・重さ・体積の変換は単純な掛け算だが、温度は違う。スケールのゼロ点が異なるため、掛け算と足し算の両方が必要になる。温度変換ツールで試してみよう。

公式の詳細

摂氏 ↔ 華氏:

°F = °C × 9/5 + 32
°C = (°F − 32) × 5/9

なぜ9/5なのか? 水は0°C(32°F)で凍り、100°C(212°F)で沸騰する。華氏のレンジは212 − 32 = 180度、摂氏のレンジは100度。180/100 = 9/5。

摂氏 ↔ ケルビン:

K = °C + 273.15
°C = K − 273.15

ケルビンは摂氏と同じ度の大きさだが、絶対零度(−273.15°C)をゼロとする。負のケルビン値は存在しない。

華氏 ↔ ランキン:

°R = °F + 459.67

ランキンは華氏版のケルビン。アメリカの工学熱力学で使われる。

豆知識: −40°は摂氏と華氏が交差する点。−40°C = −40°F(完全に一致)。

コード実装

JavaScript:

const tempConvert = {
  cToF: (c) => c * 9 / 5 + 32,
  fToC: (f) => (f - 32) * 5 / 9,
  cToK: (c) => c + 273.15,
  kToC: (k) => k - 273.15,
};

console.log(tempConvert.cToF(100));  // 212(水の沸点)
console.log(tempConvert.fToC(98.6)); // 37(体温)

Python:

def c_to_f(c: float) -> float:
    return c * 9 / 5 + 32

def f_to_c(f: float) -> float:
    return (f - 32) * 5 / 9

print(c_to_f(100))   # 212.0
print(f_to_c(98.6))  # 37.0

暗算テクニック

摂氏→華氏の概算:2倍にして30を足す。

  • 20°C → 40 + 30 = 70°F(正確値:68°F)
  • 30°C → 60 + 30 = 90°F(正確値:86°F)

主要な温度の目安

イベント°C°FK
絶対零度−273.15−459.670
水の凝固点032273.15
室温20–2268–72293–295
人間の体温3798.6310.15
水の沸点100212373.15
オーブン(中火)180356453.15

体積の変換:公式とコード

体積変換にはユニークな罠がある:USガロンと英ガロンはサイズが違う体積変換ツールで15種類の単位間で変換できる。

主要な換算係数

変換係数
リットル → USガロン÷ 3.78541
リットル → 英ガロン÷ 4.54609
USカップ → ミリリットル× 236.588
US液量オンス → ミリリットル× 29.5735

USガロン vs 英ガロン

単位US英国
1ガロン3.785 L4.546 L20.1%
1液量オンス29.57 mL28.41 mL3.9%
1パイント473.2 mL568.3 mL20.1%

USガロンは1707年の英国ワインガロンに由来する。英ガロンは1824年に蒸留水10ポンドの体積として再定義された。結果として英ガロンはUSガロンより約5分の1大きい。

コード実装

JavaScript:

const volumeConvert = {
  litersToUSGal:  (l)    => l / 3.78541,
  usGalToLiters:  (gal)  => gal * 3.78541,
  cupsToMl:       (cups) => cups * 236.588,
  flOzToMl:       (floz) => floz * 29.5735,
};

console.log(volumeConvert.litersToUSGal(3.78541)); // 1
console.log(volumeConvert.cupsToMl(2));            // 473.176

Python:

def liters_to_us_gal(liters: float) -> float:
    return liters / 3.78541

def cups_to_ml(cups: float) -> float:
    return cups * 236.588

print(liters_to_us_gal(3.78541))  # ~1.0
print(cups_to_ml(2))              # 473.176

JavaScriptで汎用単位変換器を作る

プロジェクトに変換機能が必要なら、コンパクトな実装を紹介する。各単位と基準単位の関係を定義し、基準単位を経由して変換する。

const units = {
  // 長さ(基準:メートル)
  m:  { base: 'm', factor: 1 },
  km: { base: 'm', factor: 1000 },
  cm: { base: 'm', factor: 0.01 },
  in: { base: 'm', factor: 0.0254 },
  ft: { base: 'm', factor: 0.3048 },
  mi: { base: 'm', factor: 1609.344 },

  // 重さ(基準:グラム)
  g:  { base: 'g', factor: 1 },
  kg: { base: 'g', factor: 1000 },
  lb: { base: 'g', factor: 453.592 },
  oz: { base: 'g', factor: 28.3495 },

  // 体積(基準:ミリリットル)
  ml:    { base: 'ml', factor: 1 },
  l:     { base: 'ml', factor: 1000 },
  usgal: { base: 'ml', factor: 3785.41 },
  uscup: { base: 'ml', factor: 236.588 },
};

function convert(value, fromUnit, toUnit) {
  const from = units[fromUnit];
  const to = units[toUnit];
  if (!from || !to || from.base !== to.base) {
    throw new Error(`${fromUnit}から${toUnit}への変換は不可`);
  }
  return value * from.factor / to.factor;
}

function convertTemp(value, from, to) {
  let c;
  if (from === 'C') c = value;
  else if (from === 'F') c = (value - 32) * 5 / 9;
  else if (from === 'K') c = value - 273.15;
  else throw new Error(`不明な単位: ${from}`);

  if (to === 'C') return c;
  if (to === 'F') return c * 9 / 5 + 32;
  if (to === 'K') return c + 273.15;
  throw new Error(`不明な単位: ${to}`);
}

console.log(convert(26.2, 'mi', 'km'));    // 42.164928
console.log(convert(70, 'kg', 'lb'));      // 154.324...
console.log(convertTemp(100, 'C', 'F'));   // 212

FAQ

1インチは何センチメートル?

正確に2.54 cm。近似値ではなく、1959年の国際ヤード・ポンド協定で定められた正確な換算係数だ。長さ変換ツールで即座に変換できる。

摂氏を華氏に変換する公式は?

°F = °C × 9/5 + 32。例:20°C = 20 × 1.8 + 32 = 68°F。9/5の比率は華氏180度の幅(32°Fから212°F)を摂氏100度の幅で割ったもの。温度変換ツールで確認できる。

USガロンと英ガロンはなぜ違う?

USガロン(3.785 L)は1707年の英国ワインガロンに由来し、英ガロン(4.546 L)は1824年に蒸留水10ポンドの体積として再定義された。約20%の差は燃費比較やレシピ換算で無視できない。

1キログラムは何ポンド?

1 kg = 2.20462ポンド。暗算法:2倍にして10%を足す。70 kg → 140 + 14 = 154ポンド(正確値:154.32)。

絶対零度とは?

0 K = −273.15°C = −459.67°F。分子の熱運動が完全に停止する理論上の最低温度。どの研究室もまだ正確に0 Kには到達していない。

トロイオンスと通常のオンスは同じ?

違う。トロイオンス(31.1035 g)は常衡オンス(28.3495 g)より約10%重い。金・銀・プラチナの価格は常にトロイオンスで表示される。

マイルをキロメートルに暗算で変換する簡単な方法は?

フィボナッチ数列を使う。連続するフィボナッチ数が1:1.609の比率を近似する:5 mi ≈ 8 km、8 mi ≈ 13 km、13 mi ≈ 21 km。それ以外の値は1.6を掛ける。

まとめ

覚えておくべき4つのポイント:

  1. メートル法は十進法。 メートル法の単位間変換は小数点の移動だけ。
  2. ヤード・ポンド法は暗記が必要。 12インチ = 1フィート、3フィート = 1ヤード、5,280フィート = 1マイル――規則性がない。
  3. 温度にはオフセットがある。 単純な掛け算ではなく公式が必要:°F = °C × 9/5 + 32。
  4. 液体はUS ≠ 英国。 USガロンと英ガロンは20%違う。どちらか必ず確認すること。

今すぐ変換したい場合は、ブラウザベースの無料ツールをどうぞ。登録不要、データはデバイスから外に出ない: