No.1ベストアンサー
- 回答日時:
Math.PI の仕様は次のようになっています。
The double value that is closer than any other to pi, the ratio of the circumference of a circle to its diameter.
πに最も近い値ということですね。元々無理数ですから、64ビットの浮動小数点形式では、どうしても表わしきれないわけです。
一方Math.sin()の方はコンピュータのネイティブコードを呼び出すことになっています。したがって、この値はライブラリ関数の
実装に依存することになりますが、上記の数値精度および演算誤差から、どうしても数値精度程度の誤差は生じてしまいます。
コンピュータというものはそういうものだと割り切って考えるしかないのかもしれません。
これぞという解決法にはお目にかかったことが無いように思います。一般的には、数値にある程度の許容量を設け、その中に入って
いれば同等に扱うというようなやり方をしているように思います。例えば、問題のケースであれば、値が±1E-10の間にあればゼロと
みなすというようなやり方です。
その精度では満足できないということであれば、もっと桁数の多い新たな数値型のクラスを定義するしかないと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 英語 和訳の手伝いをお願いします 2 2023/02/27 11:42
- 日本語 こんばんは。 Is there a way in japanese to say "I couldn 2 2022/05/12 20:05
- Java Javaについて、mathクラスを使わずに15➗3の結果を切り上げる方法を教えてください…!! 3 2023/04/28 21:37
- 大学・短大 (大学数学)こういった問題集が欲しいです。 3 2022/10/01 11:54
- 英語 ofの用法について教えて下さい 7 2022/11/23 14:57
- 英語 英文について教えて下さい。 6 2022/04/20 14:06
- 英語 彼にとって科学は数学よりも簡単です For him science is ____ ____ mat 2 2022/12/24 17:02
- 英語 英語の質問です。 I‘l go to the bookstore to buy a math exe 4 2023/06/17 01:29
- Ruby vscode 文字化け 1 2022/05/21 19:17
- その他(プログラミング・Web制作) pythonでのリスト内抽出について 1 2022/03/23 14:59
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Stringクラスの変数の格納アド...
-
VB.NET+Javascriptで、VB.NETで...
-
ダブルクォーテーションを含む...
-
DateTimePickerに値を入れたい...
-
javaのCSVデータ読込についてです
-
実行シェルからCOBOLへパラメー...
-
ArrayListの要素数の上限
-
Javaの問題なのですが、「3文字...
-
暗号化文字列を英数字のみにしたい
-
BCD形式で時刻を!
-
ResultSetの内部構造(Java)
-
JSPでの計算結果表示
-
EL式でのbeansからの値取得につ...
-
char型での演算子
-
PSQLExceptionが発生する
-
EM_GETSELメッセージについて。
-
hiddenの値を消したくない!
-
Evaluate()に文字列の形式の数...
-
wsprintf関数の使い方について
-
テキストファイルを読み込んで...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ダブルクォーテーションを含む...
-
ArrayListの要素数の上限
-
特定の文字列を複数抜き出した...
-
javaのCSVデータ読込についてです
-
wsprintf関数の使い方について
-
BCD形式で時刻を!
-
結合した文字列をファイル名に...
-
Evaluate()に文字列の形式の数...
-
C言語の変数(LSB)の合わせ込...
-
実行シェルからCOBOLへパラメー...
-
hiddenの値を消したくない!
-
VB6,論理演算子Orの使い方がわ...
-
DateTimePickerに値を入れたい...
-
char型での演算子
-
String str = "a\\\\b\\\\c";
-
Javaの問題なのですが、「3文字...
-
8桁整数を限りなく短い文字列に...
-
matchesを否定文として使う方法...
-
DOSバッチで変数の値を変数名に...
-
excel vba 時間計算と条件分岐...
おすすめ情報