《数学》セ氏とカ氏・第44回

第三勢力:阪本[初代]雅哉

 セ氏とカ氏はいったい何者なのか。
 何度も書くようだが、最近は Internet でちょっと検索するだけで、こういった項目をについて、

セ氏(摂氏)
 Celsius(セレシウス)…(1701−1744)
 スウェーデン、ウプサラ大学教授、天文学者。
 摂氏温度目盛は1気圧下の水の凝固点を0度に沸点を100度とし、その間を100等分する温度目盛。
カ氏(華氏)
 Fahrenheit(ファーレンハイト)…(1686−1736)
 ドイツ、物理学者。ちなみに中国で「華倫海」と漢字にあてたことから華氏と呼んでいる。
 華氏温度目盛は1気圧下の水の凝固点を32度に沸点を212度とし、その間を180等分する温度目盛。

 なんて程度のことは簡単に調べが付いてしまう。ついでに摂氏は「摂爾思」と書くこととか、誰が使っているのかは不明だが、レ氏(列氏 = R'eaumur)があったり、さらには絶対温度(Kelvln)を華氏目盛で刻んだランキン(Rankine)温度なんてものがあったりすることも。
 また Fahrenheit はなぜ32や212、180といった中途半端と思える数字を採用したのかと、疑問がわくが…、どうやら最初は氷に塩を混ぜた温度を0度に人間の体温を96度(羊の体温を100度にしたという説もある)にしていたが、後から微調整して水の氷点と沸点に変更したらしい。
 などと Internet で検索た内容を書き写していると、「数学科の授業におけるインターネットの活用」なんてものが見つかった。こんなことを嬉々として書いていても、今回のタイトルは中学生の教科書から採用したものなので当然かもしれないが、中学生の学習レベルとなりそうだ。ただ、なぜ「セ氏とカ氏」が“理科”ではなく“数学”なのかは詳細への記述がないので不明。

 日本人が普通に温度を計るときは普通は摂氏を使う。
 実は、小学生の頃に我家だったか学校だったか忘れたが壁にかかっていた寒暖計には摂氏と華氏の両方の目盛が刻まれていたので、たとえば戦前は華氏も使っていたなんてことがあるのかはよく知らないが、とにかく私は摂氏以外は使用したことはない。
 華氏なんて単位は、たまにアメリカに行ったときなどにTVで天気予報を見ている(というより眺めている)ときなどに、明日の気温が70だの80などという、とんでもない数字か画面に出ているのをみて、一瞬戸惑った後に「あぁ華氏なんだ、でも暑いのか寒いのかも全然わからん」と感想を持つときくらいしか意識することはない。
 今回調べてみたがヨーロッパは摂氏が使われているらしい。というかアメリカ(とおそらくイギリス)以外で華氏を使っているとはっきりわかった国は無かった。
 別に滅多に行くことのないアメリカで、どこかの州の明日の気温が何度であっても別に困ることはない。たしかに温度で困ることはないが、長さとか距離とか重さの単位はけっこう鬱陶しい。たとえば、車を運転していても目的地までの距離、いやそれよりも自分がどれだけの速さで走っているのかがわからない。
 SI単位使えよ。
 アメリカが全面的にSI単位に移行すれば、他の国のローカル単位がどうであれ、目にするのはSI単位だけになるだろう。
 アメリカ(に限らず結構多くの地域で)しばらくは混乱するかもしれないが、日本はすでにメートル法に移行している。(もはや“尺”や“貫”を使ってないし“升”や“坪”が無くなっても別に困ることなんてない)
 たしかにSI単位の温度は絶対温度(Kelvln)で摂氏ではないけど、273(273.16か)の加減算だけだしなんとかなる。
 普通、SI単位の質量(kg)と重量単位の重さ(kgf)を正確に認識していないだろうから、質量と重さは混乱するかもしれない。
 しかし体重にしても食料品でも別に質量でも重量でも日常生活で問題(本来なら重量じゃなくて質量で計測すべき項目かも)があるわけではない。元から区別していないから、地球上で暮している限りは、実は混乱なんてないのかもしれない。
 長さや重さなんかは古代からの慣習もあるからある程度はしかたないのかもしれない。しかし温度は近代になってからというより、「Fahrenheit なぜ水の凝固点と沸点に基準を変えたときに、Celsius に合せなかったのか」と、もしくは頑に「最初に決めた目盛に固執していろ」そうすれば、摂氏と華氏の変換が整数の加減乗除だけで済まなくなってそれはそれで面白かったかもしれないのに。
 別に滅多に困らないから文句を言わなくても良いけど。


 ついでに、
摂氏と華氏の相互の変換は
 C=5/9(F-32)
 F=9/5(C+32)

だけど、 
 華氏温度から32を引いて、2で割り、それを1割増しすると、簡単に計算できる。
 っていつ使うんだろ、こんな知識は。
 マグマ大使では、ゴアが変身したゴアゴンゴンの必殺技は“絶対零度の破壊光線”だった。そして、ウルトラマンの最後の敵ゼットン(ゼットン星人が連れてきた宇宙恐竜)の必殺技は“一兆度の火の玉”だった。
 ゼットンはウルトラマンと倒したのに比べて、ゴアゴンゴンはマグマ大使にあっさりやられてしまったところを見ると“絶対零度”よりも“一兆度”の方がより破壊力が強いのかもしれない。

 頁に余裕もあるし、他に書くこともないので、のでお約束のネタを書くことにする。
 25年ほど昔、パソコンの黎明期(というかマイコンと呼ばれていた頃)には、まだ MicroSoft による世界支配も確立せず Intel も Motorola と天下を二分していた。そして当時使用されていたプログラム言語の主流は BASIC (計算機実習などでは FORTRAN を使用した。COBOL の所もあっただろう)だった。
 そして bit や ASCII などといった雑誌によって、アメリカには UNIX なんてシステムが有ることは知識としては知っていたが、自分には直接関係のない世界だった。
 そして学校の研究室には CP/M が動く機械があった。
 今の携帯電話に比べても何百倍もしょぼいシステムだがそこには BASCOM、MS-FORTRAN、BDS C などのプログラム言語が、そしてエディタでファイルを作成してコンパイル、リンク、そして出来上がったプログラムを実行する環境が存在していた。
 なぜか、「プログラミング言語C」が手元にあったので、BDS C 使ってみることに、
 最初にもっとも有名な例題

main()
{
    printf("hello, world\n");
}

を入力する。(もちろん必要なおまじないに関しては BDS C のマニュアル(コピーだったけど)を参考にした)
 まずは、そのままコンパイル、実行してみる。当然画面上には

hello, world

と表示される。
 さらにプログラムを修正してメッセージを変えたりするのだってなんの造作もない。Cなんてちょろいもんだぜ。と余裕を持って次へ進む。
 次の例題は、これも有名な

/* f=0,20,...,300に対して、摂氏-華氏温度対応表を印字する */
main()
{
    int lower, upper, step;
    float fahr, celsius;

    lower = 0;     /* 温度の下限 */
    upper = 300;   /* 上限 */
    setp = 20;     /* きざみ */

    fahr = lower;
    while (fahr <= upper) {
        celsius = (5.0/9.0) * (fahr-32.0);
        printf("%4.0f %6.1f\n", fahr, celsius);
        fahr = fahr + step;
    }
}

第三勢力:阪本雅哉である。
 最初の例題に比べて6倍も長くなっているが、CP/M にはフルスクリーンエディターだってあった。プログラムの入力は(パンチカードを使うのに比べれば非常に簡単)全然問題ない。
 しかし、いざコンパイルしようとすると、5行目以降に何ヶ所にもエラーが出る。何度見直しても入力間違いはない。結局、当時は回避方法を発見することはできなかった。
 というわけで、私の“初めてのC”体験は摂氏と華氏に敗れ去ったのであった。

*当時の BDS C は浮動小数点演算をサポートしていなかっただけ。



back index next