問題タブ [nan]
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.
java - Javas Math.sin()は常にNaNを生成します
これがばかげた初心者の問題であるならば、私を許してください、しかし、私は本当にそれを理解しません。
私は次のように宣言されたメンバー変数を持っています:
3.14159265をValueに割り当て、その正弦を計算しようとすると、次のようになります。
実際、これは私が試したすべての値で発生します-たとえ0でも!Math.sin()は、引数の値に関係なく、結果として常にNaNを生成するようです。
ドキュメントによると:
引数がNaNまたは無限大の場合、結果はNaNになります。
しかし、私の議論は明らかにNaNや無限大ではありません!
一体何が起こっているのですか?
アップデート
私は地球上で最も愚かなプログラマーであることがわかりました。私のプロジェクトでは、もちろんコード全体が上記の例よりもはるかに複雑です。これは一種の式パーサーおよびエバリュエーターであり、定義された数学関数については、switch句を使用して、呼び出す関数を決定します。sqrt関数が負のパラメーターで実行される原因となった場合のbreakステートメントを忘れました。
私が言ったように-地球上で最も愚かなプログラマー...
最高の私見なので、一番上の答えを受け入れました。時間を無駄にしてすみません-.-
c# - MSテストでのdouble.NaNの同等性
なぜこの結果が得られるのですか?
NaNが数値に等しいと主張することでデルタはどのような違いがありますか?確かにそれは常にfalseを返すはずです。私はIsNaNを知っていますが、ここでは役に立ちません(以下を参照)。
背景:NaNを(誤って)返す関数があります。これは実数であることが意図されていましたが、テストに合格しました。デルタを使用しているのは、倍精度の等式であるためです。元のテストでは1E-9を使用していました。
c - MIPSProCコンパイラで0.0/0.0にNaNではなくゼロを返すように強制するにはどうすればよいですか?
質問にあるように、私はMIPSPRo Cコンパイラを使用しており、分子と分母の両方がゼロである一部のデータセットに対してNaNを返す操作があります。これを防ぐにはどうすればよいですか?
actionscript-3 - ActionScript の黒色の値は NaN です
関数のオプションの引数として色が指定されているかどうかを判断しようとしています。これを判断するために、if(color){...}と書いて、色が必要ない場合は NaN を指定するだけです。
ただし、黒色 (0x000000) も NaN に相当するようです。引数として 0x000000 が渡された場合、指定された色番号引数が存在し、黒であるかどうかを判断するにはどうすればよいですか?
python - matplotlib で imshow を使用して NaN 値を特別な色としてプロットするにはどうすればよいですか?
matplotlib で imshow を使用してデータをヒートマップとしてプロットしようとしていますが、一部の値が NaN です。カラーマップにない特別な色として NaN をレンダリングしたいと思います。
例:
結果として得られる画像は、予想外にすべて青色です (jet カラーマップの最も低い色)。ただし、次のようにプロットすると:
-- より良い結果が得られますが、NaN 値は vmin と同じ色で描画されます... NaN を特別な色 (例: 灰色または透明) で描画するように設定できる優雅な方法はありますか?
java - Javaでは、NaNはどういう意味ですか?
double
a を目的の数に縮小しようとするプログラムがあります。私が得る出力はですNaN
。
NaN
Javaでの意味は?
javascript - JavaScriptで数値がNaNであることをどのように確認しますか?
FirefoxのJavaScriptコンソールで試しただけですが、次のいずれのステートメントもtrueを返しません。
c# - Math.Acos()が無効な入力を報告する状況をどのように解釈しますか?
やあみんな。2つのベクトル間の角度を計算していますが、Math.Acos()は、入力がコサインの範囲外(-1> input && input> 1)の場合にNaNを返すことがあります。正確にはどういう意味ですか?誰かが何が起こっているのか説明できるでしょうか?どんな助けでも大歓迎です!
これが私の方法です:
これが私の実装Dot
ですLen
:
java - Double.isNaN() はどのように機能しますか?
Sun jdk の実装は次のようになります。
誰がそれがどのように機能するか説明できますか?
javascript - typeofNaNが'number'を返すのはなぜですか?
単なる好奇心から。
数字というのはあまり論理的ではないようですtypeof NaN
。ちなみに、falseと同じNaN === NaN
かNaN == NaN
、falseを返します。これはjavascriptの特徴の1つですか、それともこれには理由がありますか?
編集:あなたの答えに感謝します。しかし、頭を動かすのは簡単なことではありません。答えとウィキを読んで私はもっと理解しましたが、それでも、
NaNとの比較では、それ自体と比較した場合でも、常に順序付けられていない結果が返されます。比較述語はシグナリングまたは非シグナリングのいずれかであり、シグナリングバージョンはそのような比較の無効な例外を通知します。等式および不等式の述語はシグナリングではないため、falseを返すx = xを使用して、xが静かなNaNであるかどうかをテストできます。
頭を回転させ続けるだけです。誰かがこれを(たとえば数学者ではなく)人間が読める言語に翻訳できれば、私は感謝するでしょう。