問題タブ [pow]
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.
c++ - なぜ pow(10,5) = C++ で 9,999 なのか
最近、私はコードのブロックを書きます:
そして結果は間違っています:
このコードだけを使用する場合:
問題はもう発生しません。
誰か説明してくれませんか?どうもありがとうございます!
c# - C#Math.pow(x、0.333)
私はこのコードを持っています。Math.Pow((x-2)、0.333)を見つけようとすると-NaNがあります。それを解決する方法は?なぜNaNなのか?
書き直し...
java - Java Math.pow による間違った結果
次のコードを実行しようとすると
「51185893014090752 8」が得られます
13^15の正しい値は51185893014090757 です。つまり、 5Math.pow
によって返される結果よりも大きくなります。それを引き起こす可能性のあるもののアイデアはありますか?
c - 共有ライブラリから dll に切り替えたところ、pow() が見つからないというエラーが発生しました
エラーは次のとおりです。
math.h を使用する関数であっても、ライブラリ内の他のすべての関数は正常に動作しますが、pow() を必要とする関数を呼び出すとクラッシュします。共有ライブラリの場合は問題なく動作しました。gcc と makefile を使用してコンパイルしています。私が makefile に加えた唯一の変更は、ライブラリーに -ldl を追加したことです。私はまだそこに -lm を持っています。共有ライブラリの代わりにdllへの変更をサポートするようにドライバープログラムを変更しましたが、エラーの原因となった関数は変更されていません。
変更する必要があるメイクファイルは他にありますか? メイクファイルは次のとおりです。
c++ - C++ : 奇妙なメタ関数呼び出し
私の C++ コードで奇妙なメタ関数の動作があり、その理由を理解したいと思っています。
この行metaPow<5>(f(x, y))
は と同等だと思っていましたf(x, y)*f(x, y)*f(x, y)*f(x, y)*f(x, y)*1.
。しかし、そうであればMarker
、関数の " " 行が5 回出力されf
ます。
奇妙なことは、最後に良い結果が得られていることです (たとえば181.019
、x = 2
and y = 4
) が、Marker
表示される " " は 1 つだけです。どのように可能ですか?したがって、標準の pow() の代わりにコンパイル時の最適化にその関数を使用することは良いオプションですか?
どうもありがとうございました !
php - 浮動小数点累乗の計算 (PHP/BCMath)
私はbcmath
拡張機能のラッパーを書いていますが、バグ #10116はbcpow()
特に厄介です - $right_operand
( $exp
) を (ネイティブ PHP、任意の長さではない) 整数にキャストするため、平方根 (またはその他の任意の長さ) を計算しようとすると正しい結果ではなく、1
常に最終的に得られる数の )より大きい根。1
数値の n 乗根を計算できるアルゴリズムを探し始めたところ、この答えはかなりしっかりしているように見えました。実際にWolframAlpha を使用して数式を拡張したところ、精度を維持しながら速度を約 5% 向上させることができました結果の。
これは、私の BCMath 実装とその制限を模倣した純粋な PHP 実装です。
上記は 、整数が得られない場合を除い1 / fmod($exp, 1)
てうまく機能するようです。たとえば、$exp
isの場合0.123456
、その逆は となり、と8.10005
の結果は少し異なります ( demo ):pow()
_pow()
pow(2, 0.123456)
=1.0893412745953
_pow(2, 0.123456)
=1.0905077326653
_pow(2, 1 / 8)
=_pow(2, 0.125)
=1.0905077326653
「手動」の指数計算を使用して同じレベルの精度を達成するにはどうすればよいですか?
c - Cのpow関数
math.hライブラリからのべき関数を持つCコードを記述します。プログラムをコンパイルすると、「'pow'関数への未定義の参照」というエラーが表示されました。gccコンパイラ(fedora 9)を使用してプログラムをコンパイルします。
-lmフラグをgccに挿入すると、エラーは省略されますが、pow関数の出力は0になります。
誰か助けてもらえますか?コンパイラに問題はありますか?
ありがとう。
c# - ネストされた Math.Pow(...) の動作がおかしい
現在、古い C++ コードを C# に書き直しています。いくつかのテストを実行すると、正常に動作しませんでした。デバッグを開始したところ、理解できないように見える以下に出くわしました。
私はクラスで多くの数学を行っており、Math.Pow 関数を頻繁に使用しているため、そのショートカット メソッドを作成しました。
次に、このメソッドをかなり頻繁に使用する次のようなコード行があります。
この行では期待した結果が得られなかったので、計算する必要があるため、小さな断片に分割し始めました...たとえば、マイナス記号の前の値はq5に等しくなければなりません:
これらの行の後、q5 は 8775553070736.0 です。
次に、長い行を 2 つの部分に分割してみました。最初の行は、上記の 5 行に等しく、1 行として記述されている必要があります。
これはq5と同じと評価されると予想されますが、そうではありません。q12 は代わりに 4479508755225.0 に評価されます
コードの何が問題になっていますか?
c++ - 'pow' はこのスコープで宣言されていません
これが私が受け取ったエラーです:
このエラーが発生した理由を説明できる人はいますか?
c# - 整数値を取るMath.Pow
http://msdn.microsoft.com/en-us/library/system.math.pow.aspxから
Math.Powは引数としてdoubleを取りますが、ここではintを渡します。
質問:doubleへの暗黙の変換が発生した場合、浮動小数点の丸め誤差の危険性はありますか?
はいの場合は、次のようなものを使用することをお勧めします。