私は永続的なストレージシステム内でGooglesプロトコルバッファライブラリを使用しており、通貨価値を維持したいと思いますが、写真で提供されている浮動小数点型(float/double)が十分であるかどうかはわかりません。すべての通貨の値を文字列として格納することには欠点がありますか(たとえば、0.1ではなく「0.10」を格納)、データを取得して算術演算を行う必要があるときにConvert.ToDecimal関数を使用しますか?proto3の文字列として小数点以下を格納する際の短所は何ですか?
答えて
あなたはfloat/double
データ型が適してないであることを見込んで正しいある「通貨!」 彼らはある種の小数表現を使う:
は、SQLデータベース(と、うう、COBOL
プログラム...)一般店「通貨」の値がどのように考えてみましょう。 たとえば、真のCOBOL
プログラムでは、「2進化10進数(BCD)」データ型を使用することがあります。 Microsoft Accessデータベースでは、ドルとセントの値に10,000を掛けて、を固定(!)「小数点以下4桁」にして、「縮尺付き整数」を使用します。この質問の直接の目的のために
、私は間違いなく、文字列として値を格納し、その後非常に桁数に真剣に考えが格納されるとだけでその番号に「丸め」処理する方法を与えるだろう数字の
“ストレージサイズ(例えば、そのような“銀行’の丸め。”ようなアルゴリズムがありますか)? ” あなたドン’ t気にする。 あなたがを行う場合はが気になるのですが、もし特定の顧客(または、監査人...)が実際に印刷された明細書のすべての番号を追加するならば、その紙のボトムラインは同意します。少なくとも1つのペニーの中で、非常に(!)少なくとも。
当然のことながら、IBMのPOWER CPUには最近、小数値演算コプロセッサが搭載されています。金融アプリケーションのために非常に便利、大きなスピードアップを提供します。驚くべきことに、IBMは金融業界に多くのメインフレームを販売しています。 – bazza
- 1. 小数点以下のゼロを格納する
- 2. Pythonで小数点以下の文字列を使用する
- 3. 文字列と小数点以下を比較する
- 4. JSON文字列から小数点以下を削除する
- 5. 小数点以下2桁で変換する文字列
- 6. PDOは浮動小数点数をカンマで小数点以下の文字として返します
- 7. 文字列を検索して小数点以下の値を置換する
- 8. 空文字列を小数点以下の関数で返します。C#
- 9. Swiftで小数点以下の文字列を分割する方法は?
- 10. Pythonで小数点以下の文字列を整数に変換する
- 11. floatの小数点以下の桁数は何ですか?
- 12. VBA分割小数点以下2つの文字によって文字列
- 13. Regex - 文字列から数値(2小数点以下)を抽出します。
- 14. 小数点以下の文字列の配列をbigintegerに変換する
- 15. セッション中のfloatを格納しているjrubyの3つのアプリケーションは、小数点以下を捨てます
- 16. swift3に浮動小数点値とともに文字列を格納する配列ですか?
- 17. 小数点以下を小数点以下の桁数に変換します。
- 18. Ruby on Railsはmysqlデータベースに小数点以下を格納しません:
- 19. 浮動小数点数を小数点以下の文字列にキャストする方法
- 20. 小数点以下の小数点以下を小数点以下に丸める方法
- 21. BigDecimalを小数点以下3桁の通貨文字列にフォーマットする
- 22. SuspensionManager.SessionStateに文字列以外の文字を格納する
- 23. jQueryで小数点以下の数字を入力する
- 24. 最大値は何ですか?浮動小数点数を表示する小数点以下の桁数(PHP)
- 25. 文字列ビルダーを使用してjavaに小数点以下2桁まで印字する方法は?
- 26. 格納時に小数点以下2桁の小数点以下2桁の小数点以下を小数点以下2桁に置き換えない理由
- 27. 文字列の文字列の格納場所
- 28. 小数点以下2〜4小数点以下切り上げ
- 29. すべての「もの」を中央テーブルに格納する際の短所
- 30. CLI/C++ 15桁以上の浮動小数点数を格納するには?
表現の相違 –
また、処理するよりもはるかに多くのメモリを必要とします。 –