![]() |
|
|
Googleのunix.com
|
|||||||
| 高レベルのプログラミング は、 C 、 C + +についての質問の投稿は、 Java 、 SQL 、および他のプログラミング言語です。 |
その他のUNIXおよびLinuxフォーラムトピックは参考にすること
|
||||
| スレッド | スレッドスターター | フォーラム | 返信 | 最後の投稿 |
| 不一致での/ var /のADM /メッセージ | sundar3350 | Sun Solaris | 15 | 2009年3月11日 11:23午前 |
| どうすればよい過去はHTML : :エンティティ不一致のRPMには? | jjinno | UNIXのダミー質問と回答のため | 2 | 2007年8月7日 01:39午後 |
| VSFTP風変わり | Spetnik | UNIXのダミー質問と回答のため | 7 | 2004年4月28日 03:58午後 |
| 国情院のログイン不一致 | ヘンリク | UNIXのダミー質問と回答のため | 11 | 2003年4月8日 10:17午前 |
| スパスワード風変わり | jacobsa | UNIXのダミー質問と回答のため | 4 | 2002年5月30日 08:50午前 |
![]() |
|
|
LinkBack | スレッドツール | このスレッドを検索 | スレッドを評価 | 表示モード |
|
|
|
||||
|
Javaのダブル減算風変わり(端数は、通常の不一致)
私は、 Javaのチュートリアルを通して、予定しているといくつかの例ではこの小さなストレンジネスで走った... コード:
class SqrRoot {
public static void main(String args[]) {
double num,sroot,rerr,resquare;
for(num = 1.0; num < 100.0; num++) {
sroot = Math.sqrt(num);
System.out.println("Square root of " + num + " is " + sroot);
// compute rounding error
resquare = (sroot * sroot);
rerr = num - resquare;
System.out.println("Rounding error: num + " - " + resquare + " = " + rerr);
System.out.println();
}
}
}
戻り変だ-が、その結果を見て、私が書かれた10進数の奇妙( 1.002から1.001 \u003d 0.000999999997 )には、通常のバイナリリテラルと浮動小数点数の数は、すべての控除は、小さなプログラム;はまだありませんが、上記の実行コード、私の下の取得: コード:
Square root of 1.0 is 1.0 1.0 - 1.0 = 0.0 Square root of 2.0 is 1.4142135623730951 2.0 - 2.0000000000000004 = -4.440892098500626E-16 Square root of 3.0 is 1.7320508075688772 3.0 - 2.9999999999999996 = 4.440892098500626E-16 .... はそれで何かがおかしいのですか何かが原因となってよく分かりません。私は、すべてを検索したすべての人々の浮動小数点演算ハードウェアの制限についての要求が判明いたしました。任意の仕方が大きくいただければ幸いです。 -----ポストを更新----- ここで私は私の口座には、科学的表記法ではなかったが実現して投稿を見て...男の子に私は今ダムを感じる
|