タグ付けされた質問 「double」

Doubleは、倍精度浮動小数点(多くの場合64ビット)を保持する小数を格納するために使用されるプリミティブデータ型です。


11
イプシロンを使用してdoubleと0を比較する
今日、私は(他の誰かが書いた)C ++コードを調べていて、このセクションを見つけました: double someValue = ... if (someValue < std::numeric_limits<double>::epsilon() && someValue > -std::numeric_limits<double>::epsilon()) { someValue = 0.0; } 私はこれが理にかなっているかどうかを理解しようとしています。 のドキュメントはepsilon()言う: この関数は、1と[double]で表現できる1より大きい最小値の差を返します。 これは0にも適用されepsilon()ますか?つまり、最小値は0より大きいですか?またはそこに数字の間である0と0 + epsilonで表すことができますかdouble? そうでない場合、比較は同等someValue == 0.0ですか?
214 c++  double 

3
文字列による往復変換がdoubleに対して安全でないのはなぜですか?
最近、私はdoubleをテキストにシリアル化して、それを取り戻す必要がありました。値は同等ではないようです: double d1 = 0.84551240822557006; string s = d1.ToString("R"); double d2 = double.Parse(s); bool s1 = d1 == d2; // -> s1 is False しかし、MSDN:Standard Numeric Format Stringsによると、「R」オプションは往復の安全性を保証することになっています。 往復( "R")形式指定子は、文字列に変換された数値が確実に解析されて同じ数値に戻されるようにするために使用されます なぜこれが起こったのですか?
185 c#  double  tostring  precision 


9
Doubleを最も近いIntにすばやく丸める方法は?
Double結果を最も近い整数に丸め、そこから再計算する成長率の計算機()を作成しようとしています。 let firstUsers = 10.0 let growth = 0.1 var users = firstUsers var week = 0 while users < 14 { println("week \(week) has \(users) users") users += users * growth week += 1 } しかし、私は今のところできませんでした。 編集 私はちょっとそのようにしました: var firstUsers = 10.0 let growth = 0.1 var users:Int = …
170 swift  int  double  rounding 

15
C#Double-小数点以下2桁で、丸めなしのToString()フォーマット
小数点以下2桁だけになるようにC#でa Doubleをa にフォーマットするにはどうすればよいStringですか? 私が使用String.Format("{0:0.00}%", myDoubleValue)する場合、数値は丸められ、丸めのない単純な切り捨てが必要です。また、コンバージョンをString文化に敏感にしたいと考えています。
153 c#  string  double 

3
0.1を複数回追加しても損失がないのはなぜですか?
私が知っている0.1小数点数が有限進数(と正確に表現できない説明)ので、double n = 0.1いくつかの精度を失うことになると、正確ではありません0.1。一方、0.5なので正確に表現できます0.5 = 1/2 = 0.1b。 0.1 3回追加しても正確には得られない0.3ので、次のコードが出力されることは理解できると述べましたfalse。 double sum = 0, d = 0.1; for (int i = 0; i < 3; i++) sum += d; System.out.println(sum == 0.3); // Prints false, OK しかし、それでは、0.1 5回追加すると正確にどのようになるのでしょう0.5か。次のコードは出力しますtrue: double sum = 0, d = 0.1; for (int i = 0; …

21
Javaでdoubleを使用して精度を保持する
public class doublePrecision { public static void main(String[] args) { double total = 0; total += 5.6; total += 5.8; System.out.println(total); } } 上記のコードは出力します: 11.399999999999 これをどのようにして印刷する(またはそれを11.4として使用できるようにする)ことができますか?

3
このランダムな値に50/50ではなく25/75の分布がある理由
編集:基本的に私が書こうとしているのはの1ビットのハッシュですdouble。 私はマッピングするdoubleにtrueまたはfalse50/50チャンスと。そのために、いくつかの乱数を選択するコードを書きました(例として、規則性のあるデータでこれを使用し、それでも50/50の結果を取得したい)、最後のビットをチェックし、y1であるかn、それが0。 ただし、このコードでは常に25%yと75%になりnます。なぜ50/50ではないのですか?そして、なぜこのように奇妙だが単純な(1/3)分布なのか? public class DoubleToBoolean { @Test public void test() { int y = 0; int n = 0; Random r = new Random(); for (int i = 0; i < 1000000; i++) { double randomValue = r.nextDouble(); long lastBit = Double.doubleToLongBits(randomValue) & 1; if (lastBit == 1) { …

10
Javaで無限大を実装する方法?
Javaには、すべての数値データ型の無限を表すものはありますか?数学演算ができるようにどのように実装されていますか? 例えば int myInf = infinity; //However it is done myInf + 5; //returns infinity myInf*(-1); //returns negative infinity 非常に大きな数を使用してみましたが、適切で簡単な解決策が必要です。
138 java  double  infinity 

12
2つの等しくない浮動小数点数を引くことによって0を取得することは可能ですか?
次の例では、0(または無限大)による除算を取得できますか? public double calculation(double a, double b) { if (a == b) { return 0; } else { return 2 / (a - b); } } もちろん、通常はそうなりません。しかし、どのような場合aとb非常に接近している、できる(a-b)ことになり0、計算の精度が原因? この質問はJavaに関するものですが、ほとんどのプログラミング言語に当てはまると思います。



12
Scalaのdoubleと精度
Doubleを切り捨てたり丸めたりできる関数はありますか?私のコードのある時点で、私は次のような数を望みます:1.23456789丸められる1.23

9
二重クエリなしのMySQLページネーション?
MySQLクエリから結果の数を取得し、同時に結果を制限する方法があるかどうか疑問に思っていました。 (私が理解しているように)ページネーションが機能する方法、最初に私は次のようなことをします query = SELECT COUNT(*) FROM `table` WHERE `some_condition` num_rows(query)を取得すると、結果の数がわかります。しかし、結果を実際に制限するには、次のような2番目のクエリを実行する必要があります。 query2 = SELECT COUNT(*) FROM `table` WHERE `some_condition` LIMIT 0, 10 私の質問:とにかく、与えられる結果の総数を取得し、単一のクエリで返される結果を制限する方法はありますか?または、これを行うためのより効率的な方法。ありがとう!
115 mysql  pagination  double 

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