- 締切済み
相対誤差,絶対誤差
相対誤差,または,絶対誤差が 10^-12以下出なければならない とあるのですが これは小数点第12位に誤差があっても大丈夫ということでしょうか? 13位に誤差があっても大丈夫ということでしょうか? そもそもc言語などのDoubleでそんな桁まで精度が出るのでしょうか? よろしくお願いします
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- notnot
- ベストアンサー率47% (4900/10359)
回答No.1
Cのdouble等、倍精度実数は10進だと15桁強の精度があります。 相対誤差はその値に10^-12を掛けた値より誤差が小さくないといけないということです。 絶対誤差は、おそらく1 × 10^-12 以下ということでしょう。
お礼
回答ありがとうございます >Cのdouble等、倍精度実数は10進だと15桁強の精度があります。 これは環境によって違うのでしょうか? 私の環境だと小数点第7か8位位で誤差が出始めます double num = 335030261.51740766171; printf("%lf", num); 出力 335030261.517408 printf("%.12lf", num); 出力 335030261.517407660000 出力方法に誤りがあるのかもわからないレベルです この辺も教えていただけると嬉しいです よろしくお願いします