タグ付けされた質問 「floating-point」

浮動小数点数は実数の近似値であり、整数より広い範囲を表すことができますが、同じ量のメモリを使用しますが、精度は低くなります。質問が小さな算術エラー(たとえば、0.2 + 0.1が0.300000001に等しいのはなぜですか)または10進数の変換エラーについての質問である場合は、投稿する前に以下のリンクの「情報」ページをお読みください。

30
浮動小数点と二重比較の最も効果的な方法は何ですか?
2つdoubleまたは2つのfloat値を比較する最も効率的な方法は何でしょうか? これを行うだけでは正しくありません。 bool CompareDoubles1 (double A, double B) { return A == B; } しかし、次のようなもの: bool CompareDoubles2 (double A, double B) { diff = A - B; return (diff < EPSILON) && (-diff < EPSILON); } 処理を無駄にしているようです。 誰かがよりスマートなフロート比較器を知っていますか?

26
浮動小数点数を不必要な10進数の0なしで文字列にうまくフォーマットする方法は?
64ビットdoubleは、整数+/- 2 53を正確に表すことができます この事実を考えると、私の最大の整数は符号なし32ビットなので、すべての型の単一型としてdouble型を使用することを選択します。 しかし、今、これらの疑似整数を出力する必要がありますが、問題は、それらも実際のdoubleと混在していることです。 では、これらのdoubleをJavaで適切に印刷するにはどうすればよいですか? 私はを試しましたがString.format("%f", value)、小さい値に対して多くの後続ゼロが得られることを除いて、これは近いです。 これはの出力例です %f 232.00000000 0.18000000000 1237875192.0 4.5800000000 0.00000000 1.23450000 私が欲しいのは: 232 0.18 1237875192 4.58 0 1.2345 確かに、これらのゼロをトリミングする関数を書くことはできますが、それは文字列操作によるパフォーマンスの大幅な低下です。別のフォーマットコードを使ってもっと上手くできますか? 編集 トムEとジェレミーSの回答は、どちらも任意に小数点第2位に四捨五入されるため、受け入れられません。答える前に問題を理解してください。 編集2 これString.format(format, args...)はロケールに依存することに注意してください(以下の回答を参照してください)。

24
Pythonで数値をどのように切り上げますか?
この問題は私を殺しています。Pythonで数値を切り上げるにはどうすればよいですか? round(number)を試しましたが、切り捨てられました。例: round(2.3) = 2.0 and not 3, what I would like 私はint(number + .5)を試しましたが、再び数値を切り捨てました!例: int(2.3 + .5) = 2 次に、丸め(数値+ .5)を試しましたが、エッジケースでは機能しません。例: WAIT! THIS WORKED! お知らせ下さい。



12
floatとdoubleの違いは何ですか?
倍精度と単精度の違いについて読みました。しかし、ほとんどの場合で、floatかつdouble交換可能であると思われる、すなわち、1つまたは他のを使用すると、結果に影響を与えていないようです。これは本当ですか?floatとdoubleはいつ交換可能ですか?それらの違いは何ですか?



11
浮動小数点値を比較することはどれほど危険ですか?
解像度に依存しない座標系のため、私はUIKit用途を知ってCGFloatいます。 しかし、私は、例えばかどうかを確認するたびにframe.origin.xされ0、それは私が病気に感じさせます。 if (theView.frame.origin.x == 0) { // do important operation } ではないCGFloatと比較する際に偽陽性に弱いですか==、<=、>=、<、>?これは浮動小数点であり0.0000000000041、たとえば不正確な問題があります。 されてObjective-C比較するときに内部的にこれを処理するか、ということが起こる可能origin.xゼロとして読み込むにはとは比較にならない0本当のよう?

6
Javaでfloatをintに変換する方法
次の行を使用してfloatをintに変換しましたが、希望するほど正確ではありません。 float a=8.61f; int b; b=(int)a; 結果は次のとおりです。8(それがあるべき9) の場合a = -7.65f、結果は次のとおりです-7(それはである必要があります-8) それを行うための最良の方法は何ですか?
342 java  floating-point  int 


15
Pythonでフロートをほぼ同等に比較するための最良の方法は何ですか?
丸めと精度の問題のために、浮動小数点数が等しいかどうかを比較するのは少し手間がかかることはよく知られています。 例えば: https //randomascii.wordpress.com/2012/02/25/comparing-floating-point-numbers-2012-edition/ Pythonでこれに対処するための推奨される方法は何ですか? 確かにどこかにこれのための標準ライブラリ関数がありますか?

10
小数点以下2桁までの浮動小数点数を表示するJavaScript
数値を小数点第2位まで表示したかった。 toPrecision(2)JavaScriptで使えると思いました。 しかし、数がなら0.05、私は得る0.0500。変わらないほうがいいです。 JSbinでご覧ください。 これを行う最良の方法は何ですか? いくつかの解決策をコーディングすることを考えることができますが、このようなものが組み込まれていると思います(願っています)。

2
定数0.0039215689は何を表していますか?
この定数がさまざまなグラフィックヘッダーファイルにポップアップ表示され続ける 0.0039215689 色と関係があるようですね。 Googleでの最初のヒットは次のとおりです。 void RDP_G_SETFOGCOLOR(void) { Gfx.FogColor.R = _SHIFTR(w1, 24, 8) * 0.0039215689f; Gfx.FogColor.G = _SHIFTR(w1, 16, 8) * 0.0039215689f; Gfx.FogColor.B = _SHIFTR(w1, 8, 8) * 0.0039215689f; Gfx.FogColor.A = _SHIFTR(w1, 0, 8) * 0.0039215689f; } void RDP_G_SETBLENDCOLOR(void) { Gfx.BlendColor.R = _SHIFTR(w1, 24, 8) * 0.0039215689f; Gfx.BlendColor.G = _SHIFTR(w1, 16, …

6
Double vs. BigDecimal?
いくつかの浮動小数点変数を計算する必要があり、より正確になるため、BigDecimal代わりに使用することを同僚に勧めていますdouble。しかし、私はそれが何であり、どのようにしてそれを最大限に活用するのか知りたいBigDecimalですか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.