問題タブ [precision]
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.
precision - 無限精度の数学ライブラリはどのように実装されていますか?
だから私は浮動小数点の精度 (そして 1.1 のようなものを 2 進数で正確に表現できないこと) については知っていますが、疑問に思っているのは、数学関連のライブラリはどのようにして無限精度を実装しているのでしょうか? つまり、たとえば 1.1 をバイナリで正確に表すにはどうすればよいでしょうか。簡単な説明だけでも結構です。正確な詳細は自分で把握できます。ありがとう。:)
matlab - MATLAB-フロアの質問
私はMATLABの初心者です。ここに問題があります:
cは1でなければなりませんよね?なんで0なの?
b=2を直接入力した場合は次のように異なります。
sql-server-2005 - SQL Server: 数値リテラルを使用した計算
精度の低下を最小限に抑えるために、浮動小数点計算でいくつかのテストを行いました。ここで示したい現象に出くわし、うまくいけば説明が得られます。
私が書くとき
結果は
同じ式を書いて明示的にキャストするとfloat
結果は
これまでは、小数点以下を含む数値リテラルは自動的float
に適切な精度の値として扱われると考えていました。にキャストするreal
と、 にキャストした場合と同じ結果が表示されfloat
ます。
- SQL Server が数値リテラルを評価する方法に関するドキュメントはありますか?
- これらのリテラルのデータ型は何ですか?
float
精度を上げるために本当にそれらをキャストする必要がありますか (私には皮肉のように聞こえます:)?- 式をキャストで乱雑にするよりも簡単な方法はありますか?
integer - 符号付き 64 × 32 の整数除算
(32 ビット被除数 << 32) / 32 ビット除数を使用して 64 × 32 の符号なし除算を行う特別なケースのマシン命令 udiv があると仮定すると、以下を使用して完全な 64 × 32 除算を行うことができます。
しかし、署名されたケースは私に問題を与えています。udiv の署名付きバージョンを実行する同等の sdive 命令を想定すると、残りの部分などを処理する方法がわかりません。
php - postgresqlが(PHP)フロート値全体を保存しないのはなぜですか?
PHPの浮動小数点値63.59072952118762をpostgresの倍精度列に格納しようとしています。Postgresは値を63.59073として保存します。誰かが理由を知っていますか?その値には8バイトで十分です。精度を指定するときに機能するデータ型numericを試してみましたが、実際には必要ありません。
更新: 63.5907295を保存しようとすると同じ問題が発生するため、保存される前にdoubleで何かが発生するという提案は現実的です。
Update II(部分的に解決済み):doubleパラメーターを割り当てる行は次のようになります。
私が知らなかったのは、PDOのデフォルトのパラメータタイプが文字列であるということです。私はそれをPDO::PARAM INTに変更しましたが、より良い代替手段がなく(PARAM DOUBLEはオプションではありませんでした)、postgresに格納されたdoubleで10桁の精度が得られました(少なくともある程度の進歩)。数値タイプが適切に機能することを確認したので、数値はPDOを使用する場合の方法であり、小数点以下10桁を超える精度が必要なdoubleを使用する方法のようです。
とにかく、誰かが言ったように、私がこの種の精度を持つことが必須であるかどうかはわかりませんが、問題自体は調査する価値があると思います。
python - Pythonで分数の循環小数セクションを取得する方法はありますか?
Pythonのdecimalモジュールを使用して分数を処理していますが、特定の分数の繰り返し部分だけを取得したいと思います。例:1/3の場合は3を取得したいのですが、1/7の場合は142857を取得したいのです。これを行うための標準機能はありますか?
.net - 小数精度の調整、.net
C# のこれらの行
次の出力が生成されます。
したがって、リテラルから 10 進変数を作成すると、精度を制御できることがわかります。
- リテラルを使用せずに 10 進変数の精度を調整できますか?
- a から b を作成するにはどうすればよいですか? c から b を作成するにはどうすればよいですか?
.net - .net を丸めずに 10 進数の書式設定
昨日、小数とその内部精度に関する一般的な質問をしました。これは、私が対処しようとしているシナリオに関する特定の質問です。
入力されたSqlServerに列があります-decimal(18,6)。これらの値を取得すると、作成される .net 10 進数がデータベースの精度と一致します。それらは次のようになります。
これらの値を次のルールに従って提示 (ToString) する必要があります。
- ゼロ以外は常に表示されます。
- 小数点以下第 n 位までの後続ゼロが表示されます。
- 小数点以下第 n 位以降のゼロは表示されません。
だから、これは私が n が 3 のときに欲しいものです:
ここで、ToString が小数であるというコードをいくつか書きました。末尾のゼロをすべて削除し、文字列を分析して小数点を探し、小数点以下の桁数を数えて、末尾のゼロを何個戻す必要があるかを確認します。 これを達成するためのより良い方法はありますか?
また、上記の質問で ToString と言ったことは知っていますが、データ アクセス レイヤーから出る途中で小数を変更できれば、消費者は常に適切な精度で小数を取得できます。文字列を操作せずに、10 進数自体でこの操作を実行することは可能ですか?
floating-point - 1.5 x 10^(-45) から 3.4 x 10^38 までの異なる数はいくつ?
1.5 x 10 -45から 3.4 x 10 38 (IEE754 単精度浮動小数点数)までの異なる数はいくつありますか?
c# - 10進数と2倍!- どれをいつ使用すればよいですか?
C# で double を使用している人をよく見かけます。double が精度を失うことがあることをどこかで読んだことは知っています。私の質問は、いつ double を使用し、いつ decimal 型を使用する必要があるかということです。お金の計算に適した型は? (つまり、1 億ドル以上)