Witam, mam dziwny problem, otóż chce utworzyć tablice która będzie zawierała wartośći od [-1, 1], tablica ma 200001 elementów, a różnica między każdym to 0,00001. Oto kod:
public static void randomVars(double[] v) {
v[0] = -1.0;
for(int i = 1; i < v.length; i++) {
v[i] = v[i - 1] + 0.00001;
System.out.println(v[i]);
}
}
Problemem jest błąd dodawania, oto kawałek wyjścia:
-0.99999
-0.9999800000000001
-0.9999700000000001
-0.9999600000000002
-0.9999500000000002
-0.9999400000000003
-0.9999300000000003
-0.9999200000000004
-0.9999100000000004
-0.9999000000000005
...
W ostateczności ostatni element jest równy 0.9999999999961675, a nie 1.0. Ma ktoś jakiś pomysł jak to ogarnąć?