匿名質問者

どれほど昔なのかはわかりませんが、株価を小数で表示していた時代についての疑問なのです。その小数の表示形式は、端数が1/8、つまり0.125の場合のみ3ケタ、それ以外は2ケタで表示していたそうです。なぜ端数が0.125の場合のみ3ケタで表示していたのでしょうか。

情報元である詳説正規表現第三版49pに書いてあり、とても疑問に思ったので質問しました。

回答の条件
  • 1人50回まで
  • 登録:
  • 終了:2017/02/19 19:40:04

回答1件)

匿名回答4号 No.1

第2版の英語ではあるが、該当の書籍はネットで読める。
http://docstore.mik.ua/orelly/perl4/mre/mre.pdf

質問されている「詳説正規表現第三版49pに書いてあり」というところは、PDF では p70、紙のページでは p52 が該当する部分だと思われる。

質問で「0.125 の場合のみ 3ケタ」と書かれているのは、「0.375 などは小数点以下 2桁にするのか」と疑問をもっていると読めるが、原著ではそのようには書かれていない。
株価が分数で扱われていたから 0.125 単位の数字だったが、小数点以下3桁目が 0 の場合には 2桁に切り詰めて表示したいのだ、としか読めない。

I boiled down my needs to "always take the first two digits after the decimal point, and take the third digit only if it is not zero. Then, remove any other digits. "The result is that 12.3750000000392 or the already correct 12.375 is returned as "12.375", yet 37.500 is reduced to "37.50". Just what I wanted.

http://docstore.mik.ua/orelly/perl4/mre/mre.pdf

もし、日本語訳がそうなっていないのであれば、ただの誤訳である。

  • 匿名回答1号
    匿名回答1号 2017/01/20 22:16:54
    インチ規格の流れかな?
  • 匿名回答2号
    匿名回答2号 2017/01/20 22:28:09
    http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q12169454442
  • 匿名回答3号
    匿名回答3号 2017/01/20 22:38:47
    つまり、端数が0.625(5/8)である8.625などは8.63と丸めるのですか?
    記憶がおろそかながら、たぶん違うとおもいますけどね。
    1/8刻みのうち、通分できるものは最小桁の0を省略表記したのでしょう。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません