Hallo Zusammen,
und ich habe gleichwieder eine Frage.
Betrachten wir mal folgende Code:
Obwohl es sich im prinzip um die gleichen Zahlen handelt mit denen ich gerechnet
habe nur eben einmal mit float-Zahlen und einmal mit double.
Unterscheiden sich die Ergebnisse erheblich. Wie kommt dieser große Unterschied zustande?
grüße
MinaM
und ich habe gleichwieder eine Frage.
Betrachten wir mal folgende Code:
Code:
public static void main(String[] args) {
float a=300.1f, b=400.1f, c= 200.1f,d=600.1f, e=10.0f, y;
y= b+(a *b +e -c * d)* d+(a-c) /(e+e);
System.out.println(y); // Ergebnis=409.7883
double a1=300.1, b1=400.1, c1=200.1, d1=600.1, e1= 10.0, y1;
y1= b1+(a1 *b1 +e1-c1 * d1)* d1+(a1-c1) /(e1+e1);
System.out.println(y1); // Ergenis = 405.10000000873265
}
Obwohl es sich im prinzip um die gleichen Zahlen handelt mit denen ich gerechnet
habe nur eben einmal mit float-Zahlen und einmal mit double.
Unterscheiden sich die Ergebnisse erheblich. Wie kommt dieser große Unterschied zustande?
grüße
MinaM