Pozdrav svima,
Kada uradim najprostije oduzimanje double vrednosti , vraća mi rezultat:
-----------------------------
Vrednosti promenljivih su...
i = 37
j = 42
x = 27.475
y = 7.22
Sabiranje...
i + j = 79
x + y = 34.695
Oduzimanje...
i - j = -5
j - i = 5
x - y = 20.255000000000003
y - x = -20.255000000000003
-----------------------------
Ako postavim da x bude dvocifren, takvih problema nema.
Da li bi mogao neko da mi odgovori zašto se to javlja, i kako da to rešim.
pozdrav i hvala unapred!
Ako sumnjate u kod, evo istog:
public class ArithmeticDemo {
public static void main(String[] args) {
//nekoliko brojeva
int i = 37;
int j = 42;
double x = 27.475;
double y = 7.22;
System.out.println("Vrednosti promenljivih su...");
System.out.println(" i = " + i);
System.out.println(" j = " + j);
System.out.println(" x = " + x);
System.out.println(" y = " + y);
//sabiranje brojeva
System.out.println("Sabiranje...");
System.out.println(" i + j = " + (i + j));
System.out.println(" x + y = " + (x + y));
//oduzimanje brojeva
System.out.println("Oduzimanje...");
System.out.println(" i - j = " + (i - j));
System.out.println(" j - i = " + (j - i));
System.out.println(" x - y = " + (x - y));
System.out.println(" y - x = " + (y - x));
//Mno`enje brojeva
System.out.println("Mnozenje...");
System.out.println(" i * j = " + (i * j));
System.out.println(" x * y = " + (x * y));
//deljenje brojeva
System.out.println("Deljenje...");
System.out.println(" i / j = " + (i / j));
System.out.println(" x / y = " + (x / y));
//Deljenje po modulu
System.out.println("Deljenje po modulu...");
System.out.println(" i % j = " + (i % j));
System.out.println(" x % y = " + (x % y));
//mesanje tipova
System.out.println("Mesanje tipova...");
System.out.println(" j + y = " + (j + y));
System.out.println(" i * x = " + (i * x));
}
}