Seite 3 von 3
Verfasst: 29.01.2009 20:05
von Cabble
nächstes kleines problem: weil das ja ne float zahl ist, die aus der xml ausgelesen wird, hat sie sehr viel stellen hinter dem komma, die eigentlich nich da sein sollten (z.B. steht da 1.89999997615814 obwohl im xml file 1.9 steht). kann man da was gegen machen? das wäre nich so schön wenn es so bleibt, weil die berchnungen dann ziemlich ungenau werden =/
Verfasst: 29.01.2009 20:09
von Kaeru Gaman
probier mal, double zu nehmen, vielleicht wird das dann besser.
ganz abschalten läßt sich das bei der Verwendung von Fließkomma nicht,
weil diese Notation nun mal nur (gebrochene) zweierpotenzen exakt darstellen kann.
Berechnungen mit Computern sind immer nur begrenzt genau.
(naja, eigentlich berechnungen generell...)
Verfasst: 29.01.2009 20:11
von Cabble
ach stimmt. wo du es sagst fällt mir grade ein das ich im helpfile mal was davon gelesen hab. also müssten ja alle zahlen wie 1.8 oder so funktionieren.
danke für die antwort

ich hoffe mal, dass das bei den berechnungen nicht allzustark stören wird
Verfasst: 29.01.2009 20:19
von Kaeru Gaman
hier mal wieder der obligatorische Hinweis den ich regelmäßig gebe:
je nachdem was für berechnungen du hast, lohnt es sich mit Fixkomma zu arbeiten.
das bedeutet, du verwendest Ganzzahlen, rechnest aber mit tausendstel oder so.
wenn du eine 1.9 als 1900 speicherst, wird deine berechnung immer auf jede tausendstel genau korrekt sein.
das komma brauchst du eigentlich nur für die textausgabe einfügen.
deinen werten ist es egal, ob die einheit 2 oder 2000 attack hat,
wenn du damit eben auf 100.000 statt auf 100 hitpoints gehst.
auch für bewegungen kann das praktisch sein.
wenn du mit floats rechnest, kann es passieren, dass du nach einem
Beschleunigungs- und einem Brems-Vorgang nicht wieder genau bei Null landest,
du musst also eine zusätzliche bedingung einfügen, die deine 0.00000027 wieder zu einer Null macht.
mit Fixkomma kann dir das nicht passieren.
Verfasst: 29.01.2009 20:24
von Cabble
wäre eine möglichkeit, wenn ich das früher gewusst hätte. aber ich hab jetzt keine lust meine tabelle mit 3 spalten die float werte haben für 168 zeilen umzuschreiben ^^
Verfasst: 29.01.2009 20:25
von Kaeru Gaman
für sowas kann man sich aber echt ganz ganz easy nen converter schreiben...
Verfasst: 29.01.2009 20:27
von Cabble
"ganz easy" xD
für mich nich ganz so easy :P
naja egal.. ich hoffe mal das die ergebnisse nicht zu stark abweichen. ein paar der endergebnisse werden zwar sowieso abgerundet, aber ich hab da son kleinen tick, dass es möglichst ganz korrekt ist ^^
Verfasst: 31.01.2009 12:27
von Andesdaf
[OT]
schicker ava, Cabble!
[/OT]