以前、確か検索でひっかかったYahoo!知恵袋の質問に対する回答の中で、
「^2で二乗を表すというのはコンピュータの世界では常識でも一般的に通じるとは考えない方がいいでしょう」
のような本筋から外れた記述がありました。
まぁこれは1つの例なのですが、ASCIIの範囲で表せると幸せなのでこういう工夫というのはありますねということです。
C他の演算子で、
加減乗除を+,-,*,/で、比較演算子で、<,>,<=,>=を使うけど、これらは結構一般的な表現ですよね。
特にかけ算の*はなぜこうなのかよくわからないことではありますよね。
/は手書きでも使う人はあるけど、僕はあまり好きじゃない。ついでに÷もあまり好きじゃない。
分数だらけ。そっちの方がスマートに感じられる。実際はスペースの無駄だが。
べき乗の^は起源はよくわからないけど、TeXの上付き文字の表現はこれだ。
10^0.3010のような記述はTeXの数式モードが解すると、100.3010となりそう。
あと、TeXの表現に下付き文字を_で表すというのもある。
V1などと書くと、V×1に見えないこともないような気がするので、自分のメモに限ってだけど、V_1と書いてあることがある。
これもTeXの数式モードが解すると、V1になるでしょう。
平方根はTeXでは\sqrt{100}などと書き表すのだが、sqrt(100)のように書くことはありますよね。
√100と書いてもいいんだけど、なんか不格好だからね。それならそんなもの捨ててしまえと。
話はそれるのだけど、log2と書くと何を表すかというのはちょっと悩むところだな。
ただ、一般的には底が10の2の対数を表すらしい。数学ではeを底にすることが普通だけど。
なので、数学以外で特にeを底にするときは手書きのときはloge2のように書いてるんだけど、
ln2と書く方法もあると。確かに関数電卓にはln()で収容されてるな。
lnはLog Naturalの略。すなわち底がeの対数ということ。
だいたい、logの底なんて10かeしかないけど、10は計算に、eは積分で急に出現してくるイメージがありますよね。
実際それは正解なんだけど。
余談だけど、!100、100の階乗がどれぐらいかわかるか?
javascript:var i,p=0; for(i=1;i<=100;i++){ p+=Math.log(i); } p/=Math.LN10; alert("!100=10^"+p);
非常に残念なことに、JavaScriptのMathクラスには10を底とする対数はないので、eを底とする対数を取って、
1から100までそれぞれの対数を足す。対数で足すということはかけ算。
それで最後に底の変換公式で、10を底とする対数に変換して、表示。
答えは10157.97程度で、158ケタにもなることがわかる。とてつもない数字なのは間違えない。
しかし数学の記号はコンピュータで表すには骨が折れる。
数式エディタとか便利ですね。
これは世間では通じないといわれても、掲示板とかの意思疎通には便利なものです。
TPOを考えて使うと、非常に低コストで便利で、幸せになれるでしょう。

