Hallo,
nachdem mein Java-Prog mit vielen Vektoren hin und her gerechnet hat, soll es am Ende untersuchen, ob 2 Vektoren in die selbe Richtung zeigen.
Das Programm funktioniert eigentlich super, bin aber heute auf ein Problem gestoßen:
Der eine Vektor ist (0|1) und der andere angeblich (0|0.9999...) (beide Vektoren sind aber (0|1))
Nun gibt es ja die Aussage "0.9999...==1" (vermutlich löse ich hiermit eine Diskussion aus ;-)), nur leider weiß das Java nicht.
Ich könnte jetzt natürlich prüfen "if (v[1]==0.999999999999999) v[1] = 1;" aber das finde ich nicht sehr elegant.
Hat mal irgendwer damit Bekanntschaft gemacht? Wie würdet ihr das lösen?
nachdem mein Java-Prog mit vielen Vektoren hin und her gerechnet hat, soll es am Ende untersuchen, ob 2 Vektoren in die selbe Richtung zeigen.
Das Programm funktioniert eigentlich super, bin aber heute auf ein Problem gestoßen:
Der eine Vektor ist (0|1) und der andere angeblich (0|0.9999...) (beide Vektoren sind aber (0|1))
Nun gibt es ja die Aussage "0.9999...==1" (vermutlich löse ich hiermit eine Diskussion aus ;-)), nur leider weiß das Java nicht.
Ich könnte jetzt natürlich prüfen "if (v[1]==0.999999999999999) v[1] = 1;" aber das finde ich nicht sehr elegant.
Hat mal irgendwer damit Bekanntschaft gemacht? Wie würdet ihr das lösen?
Zuletzt bearbeitet: