[過去ログ]
C言語なら俺に聞け 160 (1002レス)
C言語なら俺に聞け 160 http://mevius.5ch.net/test/read.cgi/tech/1672191630/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
585: デフォルトの名無しさん (ワッチョイ e9b3-ftr4) [sage] 2023/03/05(日) 18:29:27.81 ID:On/jxRV/0 #include <stdio.h> #include <math.h> void main(void){ double a, b, c; double x1; a = 4; b = -3; c = 1; x1 = (-b + sqrt(pow(b,2) - 4*a*c)) / (2 * a); printf("%f\n", x1); } printfが-nanて表示します。これはどういう意味でしょうか? http://mevius.5ch.net/test/read.cgi/tech/1672191630/585
586: デフォルトの名無しさん (スッププ Sd33-0t2P) [sage] 2023/03/05(日) 18:43:57.85 ID:KnQWIUK4d >>585 コンバイラかて人間や こんなつまらん二次方程式の解をなんぞ解きたくない そう言う意思表示や http://mevius.5ch.net/test/read.cgi/tech/1672191630/586
587: デフォルトの名無しさん (ワッチョイ 8b63-Qpn1) [sage] 2023/03/05(日) 18:53:30.15 ID:M62PQQGq0 >>585 printf("(%f)\n",pow(b,2) - 4*a*c); http://mevius.5ch.net/test/read.cgi/tech/1672191630/587
589: はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 013e-zdzo) [sage] 2023/03/05(日) 19:07:20.35 ID:AE3nXsIn0 >>585 sqrt に負数を渡した場合には定義域エラーとなり、定義域エラーのときは処理系定義の値を返す。 その処理系では処理系定義の値というのが nan だということになる。 言語仕様では詳細は規定されていないけれど 一般に浮動小数点の表現として使われる IEEE 754 などでは非数 (not a number) を表現のひとつとして持ち、 意味のある計算結果にならなかったときは非数がセットされる。 not a number の略で NaN 。 処理系によっては定義域エラーをハンドリングする方法を用意してあることもあるけど、 発生させないように事前にチェックしたほうが基本的には簡単だと思う。 http://mevius.5ch.net/test/read.cgi/tech/1672191630/589
593: デフォルトの名無しさん (テテンテンテン MMeb-8VhG) [sage] 2023/03/05(日) 23:40:03.63 ID:yUIw0mIIM >>585 nanは、何処かでnanになると、その後の演算全てがnanになる なのでsqrtのnanが伝搬してprintfがnanを表示した ゲーム(特に3D)は、油断するとnanを伝搬させてしまう事があって、キャラがグチャグチャに壊れて表示されるのは、それが原因 nanを伝搬させるとデバッグが大変なので、nanを出さないように細心の注意が必要だ sqrtとか特に割り算(/)に気を付けないといけない http://mevius.5ch.net/test/read.cgi/tech/1672191630/593
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.555s*