盲点のある考え方
- 2016.11.30 Wednesday
- 10:00
JUGEMテーマ:コンピュータ
或る開発を手伝うことになった。
システムの一部を担当するのだが結構難しそうな内容だった。
入力された計算式をコンピュータが計算できるように変換するものだ。
一般的に使われている計算式はコンピュータでは理解できない。
人間はこの変換を無意識にしている。
加減算に対して乗除算は優先されるなどのルールがあるのだ。
『1+2×3』という計算を考える。
『2』と『3』を掛けてその結果に『1』を加えるという手順になる。
この手順でないと正しい結果は得られない。
足し算、引き算、掛け算、割り算、計算順序を示す括弧がある。
これらの優先順を考慮しつつ変換する。
仕事を依頼した相手から、こんな考え方で対応できると簡単なフォローチャートを
渡されたのだが、どう考えても漏れがある。
このままでは正しい結果が得られないのだ。
そのままでは、プログラムを作ることはできない。
フローチャートを書いた人に問題点を指摘したのだが、なかなか理解できないらしい。
諦めて、書籍などを当たった。
当時はインターネットなどという便利なものはなかった。
コンパイラーの作り方に関する本に該当の計算式を変換する考え方が
紹介されていた。
ビジネス実務に関するプログラムの世界ではこんな本を読む奴はいない。