@perl:
Ja, das sprach ich einige Posts oben schon an, dass Gleitkommazahlen oft völlig falsch eingesetzt werden. Der eine ärgert sich, dass die Geschwindigkeit flöten geht (ohne entspr. Hardware) und die Kodegröße sich aufbläht (wenn er es denn überhaupt merkt...) während der andere sich darüber wundert, dass seine Rechnungen gewissen Ungenauigkeiten unterliegen.
Deshalb sollte man sich überlegen, wie man der Lage Herr werden könnte.
Wenn ich eine Rechnung wie
x = a * 0.002f;
Durchführen lassen will, kann ich genausogut auch
x = a * 2;
rechnen lassen, und das Komma entsprechend drei Stellen nach vorne setzen, bei der Ausgabe. Das spart enorm Ressourcen, solange die Wertebereiche (gegeben durch Bitbreite und evtl. Vorzeichenbit) im Rahmen bleiben.
Alternativ müsste man sich entsprechende Datentypen selber bauen. Nur, um damit sinnvoll rechnen zu können, muss man alle zu benutzenden Operatoren als Funktion implementieren oder wie in C++ üblich für den Datentypen überladen. C++ wäre übertrieben, die Implementation dieser Funktionen jedoch machbar
.
_________________