Ich habe einen lustigen Formatfehler im Basic65 erkannt:
10 t=9.98
20 print using "##.#"; t
Das Ergebnis ist im Emulator und auf dem mega65 0.0
Um den Fehler zu umgehen, muss außerhalb der Routine bereits gerundet werden.
You are about to leave Forum64 to get redirected to the following address:
Please note, that the target website is not operated by us. We are not responsible for it's content nor does our privacy policy apply there.
Ich habe einen lustigen Formatfehler im Basic65 erkannt:
10 t=9.98
20 print using "##.#"; t
Das Ergebnis ist im Emulator und auf dem mega65 0.0
Um den Fehler zu umgehen, muss außerhalb der Routine bereits gerundet werden.
Ich hatte sowas beim c64 mal. Für mein selbstgeschriebenes Programm zum Erstellen von Rechnungen hab ich dann nur noch mit Integer-Werten gerechnet (also quasi alles in Cent-Beträgen) und die Ausgabe in Dezimal selbst geschrieben.
Sonst gab es zum Beispiel bei der Berechnung von Nettopreis und MwSt auch gerne mal Rundungsfehler.
Danke für den Hinweis Snoopy. Der Bug in dem Report hat aber eine andere Ursache.
Da geht es um Überschreitung des vorgegebenen Formates.
In meinem Beispiel rundet der Befehl aber nicht richtig.
Interessant. 19.98 macht er richtig.
Das versteh mal einer