Thomas Darimont
Erfahrenes Mitglied
Hallo!
okay *BrettvormKopfwegnehm*. Ihr habt recht, wobei es auch hier ein Genauigkeitsproblem gibt...
Okay, wenn wir dann den Modulo verwenden, dann aber auch den richtigen... bei Rechnen mit Fliesskommazahlen sollte man besser den Math.IIIERemainder(...) verwenden.
http://java.sun.com/docs/books/jls/third_edition/html/expressions.html#15.17.2
Also:
Gruss Tom
okay *BrettvormKopfwegnehm*. Ihr habt recht, wobei es auch hier ein Genauigkeitsproblem gibt...
Code:
System.out.println(20.0 % 5.000000000000001);
System.out.println(20.0 % 5.0000000000000001);
Okay, wenn wir dann den Modulo verwenden, dann aber auch den richtigen... bei Rechnen mit Fliesskommazahlen sollte man besser den Math.IIIERemainder(...) verwenden.
http://java.sun.com/docs/books/jls/third_edition/html/expressions.html#15.17.2
Also:
Code:
//double a = 1000.000000000000001;
double a = 1000.00000000000001;
double b = 20.00;
double c = a / b;
if (isNearZero(Math.IEEEremainder(a,b))){
System.out.println(c + " ist ganzzahlig");
}else{
System.out.println(c + " ist nicht ganzzahlig");
}
Gruss Tom