0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

華氏(℉)と摂氏(℃)の変換方法|計算式とJavaScriptでの実装例

0
Posted at

1.png

海外の天気予報やAPI、海外製品の仕様書を見ていると、

  • 68°F
  • 86°F
  • 100°F

のように、温度が「華氏(℉ / °F)」で表示されていることがあります。

日本では摂氏(℃ / °C)が一般的なので、

68°Fは何℃?

と、その都度換算したくなることもあります。

華氏と摂氏は単純な倍率では変換できませんが、計算式自体はそれほど複雑ではありません。

この記事では、

  • 摂氏と華氏の違い
  • 摂氏から華氏へ変換する計算式
  • 華氏から摂氏へ変換する計算式
  • よく使う温度の換算例
  • JavaScriptで変換する方法

をまとめます。

摂氏(℃)と華氏(℉)とは

摂氏と華氏は、どちらも温度を表す単位です。

日本では一般的に**摂氏(℃)**が使われています。

一方、アメリカなどでは日常生活の気温表示に**華氏(℉)**が使われています。

代表的な温度を比較すると、次のようになります。

摂氏(℃) 華氏(℉)
0℃ 32℉
10℃ 50℉
20℃ 68℉
25℃ 77℉
30℃ 86℉
37℃ 98.6℉
100℃ 212℉

同じ温度でも、摂氏と華氏では数値が大きく異なります。

たとえば、日本で「気温30℃」と言うところを華氏で表すと「86℉」になります。

摂氏から華氏へ変換する計算式

摂氏を華氏へ変換する場合は、次の式を使います。

華氏(℉) = 摂氏(℃) × 9 ÷ 5 + 32

または、

°F = °C × 1.8 + 32

と書くこともできます。

20℃を華氏に変換する

20℃を華氏へ変換してみます。

20 × 9 ÷ 5 + 32
= 36 + 32
= 68

したがって、

20℃ = 68℉

です。

30℃を華氏に変換する

同じように30℃の場合は、

30 × 9 ÷ 5 + 32
= 54 + 32
= 86

なので、

30℃ = 86℉

となります。

華氏から摂氏へ変換する計算式

逆に、華氏を摂氏へ変換する場合は次の式を使います。

摂氏(℃) = (華氏(℉) - 32) × 5 ÷ 9

つまり、

  1. 華氏から32を引く
  2. 5を掛ける
  3. 9で割る

という順番です。

68℉は何℃?

68℉を摂氏へ変換してみます。

(68 - 32) × 5 ÷ 9
= 36 × 5 ÷ 9
= 20

したがって、

68℉ = 20℃

です。

海外の天気予報で「68°F」と表示されていた場合、日本の感覚では約20℃ということになります。

86℉は何℃?

86℉の場合は、

(86 - 32) × 5 ÷ 9
= 54 × 5 ÷ 9
= 30

なので、

86℉ = 30℃

です。

100℉は何℃?

100℉の場合は、

(100 - 32) × 5 ÷ 9
= 68 × 5 ÷ 9
≈ 37.78

となります。

つまり、

100℉ ≈ 37.8℃

です。

華氏では100という数字でも、摂氏では約37.8℃になるため、単純に数値だけを比較することはできません。

37℃は華氏で何度?

37℃を華氏へ変換すると、

37 × 9 ÷ 5 + 32
= 66.6 + 32
= 98.6

なので、

37℃ = 98.6℉

となります。

小数を含む温度でも、同じ計算式で変換できます。

-40℃と-40℉は同じ

華氏と摂氏には少し面白いポイントがあります。

-40℃と-40℉は同じ温度です。

計算式へ-40を入れてみます。

-40 × 9 ÷ 5 + 32
= -72 + 32
= -40

つまり、

-40℃ = -40℉

となります。

摂氏と華氏は基準となる温度と目盛りの幅が異なりますが、ちょうど-40の地点で数値が一致します。

JavaScriptで摂氏から華氏へ変換する

Webアプリやツールで温度変換を実装する場合も、同じ計算式をそのまま使えます。

摂氏から華氏への変換は次のように書けます。

function celsiusToFahrenheit(celsius) {
  return celsius * 9 / 5 + 32;
}

console.log(celsiusToFahrenheit(20));
// 68

JavaScriptで華氏から摂氏へ変換する

逆方向も同様です。

function fahrenheitToCelsius(fahrenheit) {
  return (fahrenheit - 32) * 5 / 9;
}

console.log(fahrenheitToCelsius(68));
// 20

100℉を入力すると、

console.log(fahrenheitToCelsius(100));
// 37.77777777777778

のように小数が長く表示されます。

表示用であれば、必要に応じて丸め処理を追加します。

function fahrenheitToCelsius(fahrenheit) {
  const value = (fahrenheit - 32) * 5 / 9;
  return Math.round(value * 10) / 10;
}

console.log(fahrenheitToCelsius(100));
// 37.8

双方向の変換関数にする

1つの関数で変換方向を指定することもできます。

function convertTemperature(value, from) {
  if (from === "celsius") {
    return value * 9 / 5 + 32;
  }

  if (from === "fahrenheit") {
    return (value - 32) * 5 / 9;
  }

  throw new Error("Unsupported temperature unit");
}

使用例です。

console.log(convertTemperature(20, "celsius"));
// 68

console.log(convertTemperature(68, "fahrenheit"));
// 20

入力フォームと組み合わせれば、ブラウザ上でリアルタイムに華氏・摂氏を変換することもできます。

よく使う華氏・摂氏の換算表

海外の天気予報を見る用途であれば、代表的な数値を覚えておくと便利です。

華氏(℉) 摂氏(℃) 温度の目安
32℉ 0℃ 水が凍る温度の目安
50℉ 10℃ 肌寒く感じやすい気温
59℉ 15℃ 涼しい気温
68℉ 20℃ 比較的過ごしやすい気温
77℉ 25℃ 暖かい気温
86℉ 30℃ 暑い気温
95℉ 35℃ かなり暑い気温
98.6℉ 37℃ 体温の換算例
212℉ 100℃ 水が沸騰する温度の目安

特に、

32℉ = 0℃
68℉ = 20℃
86℉ = 30℃

あたりを覚えておくと、海外の天気予報を見るときに温度をイメージしやすくなります。

Webで華氏・摂氏をすぐ変換する

計算式はシンプルですが、毎回手計算するのは少し面倒です。

shinsu.jpでは、摂氏(℃)と華氏(℉)をその場で相互変換できるツールを公開しています。

どちらか一方へ温度を入力すると、もう一方の単位へ自動的に換算できます。

小数やマイナスの温度にも対応しています。

まとめ

摂氏から華氏への変換式は、

華氏(℉) = 摂氏(℃) × 9 ÷ 5 + 32

華氏から摂氏への変換式は、

摂氏(℃) = (華氏(℉) - 32) × 5 ÷ 9

です。

代表的な値としては、

0℃ = 32℉
20℃ = 68℉
30℃ = 86℉
37℃ = 98.6℉
100℃ = 212℉

となります。

海外の天気予報やAPI、海外製品の仕様書などで華氏表記を見かけたときは、この計算式を使えば摂氏へ変換できます。

プログラムから扱う場合も計算式は同じなので、JavaScriptなどで簡単に実装できます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?