- ベストアンサー
Excelのrept関数の繰り返し回数について
関数式=rept("*",3/1)では、***と表示されますが、 =rept("*",0.3/0.1)では、**と表示されます。 数式で0.3/0.1は3になるにもかかわらず、2個分しか繰り返されません。 結果が異なるのはなせでしょうか? バージョンは2003,2007,2010など無関係です。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
パソコン上では、0.3/0.1 は、3.0 にはならないからです。 約 2.999999618xxxx となります。 パソコンが整数を扱うときには、3はそのまま3であり、1も1です。 しかし、小数である 0.3 や 0.1 を内部で記憶するときには、浮動小数点数という 形式で行います。 ご参考 http://www.cc.kyoto-su.ac.jp/~yamada/programming/float.html よって、0.3/0.1 では、3には足りないので、** となってしまいます。 Excel というよりは、デジタルコンピュータの仕様上しかたのないことです。
お礼
DIooggooID さま 早速のご回答、ありがとうございます。 すっきりしました!感動です。さすがです。 これからもご指導よろしくお願いいたします。