気圧計の問題

http://www.asahi-net.or.jp/~HA4K-MYZK/jyugyou/studentanswer.pdf


これかあ、なつかしい。確かエキスパートCプログラミングの最後の方に載っていた話だよね。
この本には回答として、倫理無しでおもしろいのは気圧計を武器にして管理人を殴るとか載っていたはず。
どうでも良いけど、なぜPDF?

エキスパートCプログラミング―知られざるCの深層 (Ascii books)

エキスパートCプログラミング―知られざるCの深層 (Ascii books)


本来は地上とビルの頂上では気圧が違うはずだからその差分を計算で出して欲しい、というのが質問者の意図の問題(だと思う)。
ただ気圧センサだったらまだしも、アナログな気圧計だと実際に実験したらそれほど精度は高くないはず。
かといって紐で測っても途中でしなってまず無理。アナログだったら棒の長さとの比率とかが良いのかなあ?
実際こういう測量のプロだったらどうするんだろう?


ともかく、こういう思考実験で色々なパターンを考えるのはプログラマとしては当然で、さらに実際に使えるかも考えないといけないので良い訓練になる。
日本の頭が固いところだと、情報処理の試験の様なのを前提としているけどあんなの意味が無いような気がしている。かといって、レドモンド式面接試験のようなのもどうかと思うけど。
プログラマの試験にはFizzBuzz問題ここの問題とかJavaスクールの危険の様な問題とそれに加えて、今回のように色々な問題解決を行う試験にすれば良いんじゃないかなあ。


最近流行りのコミュニケーション能力は個人的には下らないと思っていて(論理的な思考を突き詰めたらアナログ的なから遠ざかるのは当たり前だと思う)、こういう能力の方が大切だと思う。
そもそも日本の学校教育だとこういうひねくれた(と言われそうな)回答はダメと言われるけど、海外はこういう考え方も大切にするのが素晴らしい。