問題タブ [floating-accuracy]

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 投票する
6 に答える
38921 参照

javascript - JavaScriptで誤って丸められた多数

このコードを参照してください:

Firefox 3.5でコンソールを見ると、の値はjsonParsed四捨五入された数値です。

異なる値を試しましたが、同じ結果になりました(数値は四捨五入されています)。

また、丸め規則もありません。714341252076979136は714341252076979200に丸められますが、714341252076979135は714341252076979100に丸められます。

なぜこうなった?

0 投票する
3 に答える
517 参照

algorithm - 多項式の評価精度、乗算と除算

x の累乗で割った x に多項式があるとします。

効率はさておき、これは数値的により正確な計算であり、上記または除算を使用します。

ありがとう

0 投票する
4 に答える
2003 参照

javascript - Jquery は $20.1 ではなく $20.099999999999998 を表示します。

これは Jquery コードです:</p>

リーダーの値が 67 で単価が 0.3 の場合、合計金額が計算され、$20.1 ではなく $20.099999999999998 が表示されます。どうしたの?$20.099999999999998 ではなく $20.1 を表示したい場合、コードを書き直すにはどうすればよいですか?

0 投票する
4 に答える
7201 参照

python - Python float - str - フロートの奇妙さ

ここで何が起こっているのですか?0.47000000000000003文字列に変換し、結果の値を float に戻すにはどうすればよいですか?

WindowsでPython 2.5.4を使用しています。

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

sql - SQLServer2000/2005/2008でFLOATを使用して小数点以下の桁数を変換する方法

このSOの質問では、OPは結果の小数点以下0桁を削除したいと考えていました。これを回避するために(以下で)示した例は、DECIMALを使用してCASTを実行し、次にFLOATを使用してCASTを実行することです。

例えば

上記の例を使用してSQLServer2005/2008で実行すると、0.55という正しい結果が得られるように見えます。しかし、他の投稿でPeterが指摘したように、SQLServer2000で実行すると0.55000000000000004が生成されます。

だから私の質問は:

  • SQLでのデータ変換に関して、FLOATは絶対に避けなければなりませんか?

  • なぜSQL2kでまだ後の版でcast(0.55 as float)利回りが出るのですか?0.550000000000000040.55

  • Microsoftは、SQL Serverの新しいバージョンでFLOATの使用をより信頼できるものにしましたか?

御時間ありがとうございます。

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

perl - Perlで浮動小数点の精度を設定するにはどうすればよいですか?

変数ごとに特別に変更することなく、Perlスクリプトの浮動小数点精度(3桁)を設定する方法はありますか?

TCLに似たもの:

0 投票する
4 に答える
47774 参照

c - printf()での浮動小数点のフォーマット

私はデータがさまざまな小数点で格納されているfloatの配列を持っているので、いくつかは、、...123.40000これらの値を文字列に出力したい場合は、最後に0を付けずに、、、、、これらの0を付けないようにします最終的には。これは可能ですか?もしそうなら、どのように?123.45000123.45600printf()123.4123.45123.456

0 投票する
9 に答える
2674 参照

java - 12.1 を浮動小数点数として正確に表現できますか?

これは、この質問のコメントを参照しています。

Java のこのコードは 12.100000000000001 を生成し、これは 12.1 を正確に表すことができる 64 ビット double を使用しています。– パイロリスティック

これは本当ですか?浮動小数点数は 2 の累乗の和で表されるため、12.1 はいくらビット数を持っていても正確には表せないと感じました。ただし、両方のアルゴリズムを実装し、有効数字の多い (12.1, 3) でそれらを呼び出した結果を出力すると、彼と私のそれぞれについて次のようになります。

12.10000000000000000000000000000000000000000000000000000000000000000000000000 12.10000000000000100000000000000000000000000000000000000000000000000000000000

を使用してこれを印刷しString.format("%76f")ました。必要以上にゼロであることはわかっていますが、 12.1 に丸めが見られません。

0 投票する
9 に答える
10676 参照

precision - 整数と浮動小数点精度

これはプログラミングの質問というよりは数値分析ですが、あなた方の何人かはそれに答えることができると思います。

2つのフロートの合計で、精度が失われていますか?なんで?

浮動小数点数と整数の合計で、精度が失われることはありますか?なんで?

ありがとう。

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

c++ - sprintf(buf、 "%.20g"、x)// bufの大きさはどれくらいですか?

私は次のようにdouble値を文字列に変換しています:

バッファサイズを30にハードコーディングしましたが、これがすべての場合に十分な大きさであるかどうかはわかりません。

  • 必要な最大バッファーサイズを確認するにはどうすればよいですか?
  • 32ビットから64ビットに切り替えると、精度が高くなりますか(したがって、バッファーを増やす必要がありますか)?

PS:使用できない、ostringstreamまたはboost::lexical_castパフォーマンス上の理由(これを参照)