問題タブ [mathcontext]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
81548 参照

java - java.math.MathContextの使用

最近、java.math.MathContextの使用法を理解しようとしましたが、正しく理解できませんでした。での丸めに使用されますかjava.math.BigDecimal。はいの場合、なぜそれは小数桁だけでなく仮数部分も丸めないのですか。

ANSI X3.274-1996APIドキュメントから、仕様で指定された標準に準拠していることがわかりましたが、ANSI X3.274-1996/AM 1-2000オンラインで読むことはできませんでした。

これについて何か考えがあれば教えてください。

0 投票する
1 に答える
62 参照

javascript - 部分文字列のすべてのインスタンスを置き換えますが、JS の世界全体のみを置き換える方法は?

たとえば、この関数

これから戻ります

私の猫は頭に帽子をかぶっています。

これに

私の詐欺師は頭に本音を持っています。

でも一緒に帰りたい

私の猫は頭に帽子をかぶっています。

0 投票する
1 に答える
650 参照

java - BigDecimal と MathContext の一貫性のない動作

BigDecimal から奇妙な動作が見られます mathContext を使用して除算を行うと、スケールと丸めモードを直接指定して除算を行う場合とは出力が異なります 同じ出力を提供する必要があると思われる例を次に示します

出力:

MathContext を使用すると、スケールの扱いが異なるようです。または、いつどれを使用するかわかりません。

0 投票する
1 に答える
240 参照

java - MathContext.DECIMAL32 を使用した Bigdecimal で正しい結果が得られない条件はありますか?

System.out.println("Result="+new BigDecimal(((63.19* 15) + (63.37* 5))).divide(new BigDecimal(15 + 5), MathContext.DECIMAL64).doubleValue());

結果=63.23499999999999

しかし、MathContext.DECIMAL32正しい結果が得られています。以下を参照してください。

System.out.println("Result="+new BigDecimal(((63.19* 15) + (63.37* 5))).divide(new BigDecimal(15 + 5), MathContext.DECIMAL32).doubleValue());

結果=63.235

0 投票する
2 に答える
480 参照

java - 加算、減算、乗算に Mathcontext が必要ですか?

まず、私の検索スキルが期待したほど良くない可能性があるため、この種の質問が既に存在する可能性があります。もしそうなら教えてください..

以下のコードを参照してください。

mathcontext が本当に必要になるのはどのような状況ですか (除算を除く)?

何かを分割しない限り、私は mathcontext を使用しません。私の知る限り、これは常に機能していましたが、ここでの欠点は何でしょうか? 足し算、引き算、掛け算に mathcontext は必要ですか? 私は BigDecimal があまり得意ではありません。double を使用する場合のように、情報を失わないように使用したいだけです。何かを追加する際に mathcontext を使用するコードを時々目にするので、それが役に立たないというのが私の意見だからといって、単にそれを削除するのはあまりにも怖いです...


その質問を読みましたが、特定の質問に対する適切な答えが実際には見つかりませんでした... mathcontext なしで BigDecimals から始めて、それらで計算します。だから私の質問は、情報の損失/精度などに関してこれに欠点があるでしょうか? それとも、これは単に最大の情報につながるのでしょうか?

編集:丸めたくありません。もちろん、1/3 のような除算の場合は丸めを行う必要がありますが、加算、乗算、減算の場合は丸めを行いたくありません。その場合、どのような状況でも mathcontext が必要ですか?