n0whereman
Registriert
Thread Starter
- Dabei seit
- 06.08.2013
- Beiträge
- 3
- Reaktionspunkte
- 0
Hallo,
mir ist beim Programmieren eines komplexeren Scripts (zur automatisierten Rechnungserzeugung) ein sehr seltsamer Applescript Bug aufgefallen. Ich habe das ganze mal aus dem Zusammenhang genommen und vereinfacht:
Dieses Ergebnis bekomme ich sowohl auf meinem iMac mit Mac OS X 10.6.8, als auch meinem Macbook Air mit Mac OS X 10.8.4... kommt dieses seltsame Ergebnis auch bei anderen zustande? Im Übrigen funktioniert es mit vielen anderen Zahlenkombinationen tadellos. Man kann das Problem umgehen, indem man nach der Berechnung von d diese Variable in einen String umwandelt:
mir ist beim Programmieren eines komplexeren Scripts (zur automatisierten Rechnungserzeugung) ein sehr seltsamer Applescript Bug aufgefallen. Ich habe das ganze mal aus dem Zusammenhang genommen und vereinfacht:
Code:
[B]set[/B] a [B]to[/B] 19.9
[B]set[/B] b [B]to[/B] 5.0
[B]set[/B] c [B]to[/B] 14.9
[B]set[/B] d [B]to[/B] a - b
(* d ergibt 14.9, ist also identisch mit c *)
[B]return[/B] d - c
(* Ergebnis: nicht wie erwartet 0, sondern -1.77635683940025E-15 *)
Dieses Ergebnis bekomme ich sowohl auf meinem iMac mit Mac OS X 10.6.8, als auch meinem Macbook Air mit Mac OS X 10.8.4... kommt dieses seltsame Ergebnis auch bei anderen zustande? Im Übrigen funktioniert es mit vielen anderen Zahlenkombinationen tadellos. Man kann das Problem umgehen, indem man nach der Berechnung von d diese Variable in einen String umwandelt:
Code:
[B]set[/B] a [B]to[/B] 19.9
[B]set[/B] b [B]to[/B] 5.0
[B]set[/B] c [B]to[/B] 14.9
[B]set[/B] d [B]to[/B] a - b
(* d ergibt 14.9, ist also identisch mit c *)
[B]set[/B] d [B]to[/B] d [B]as[/B] [I]string[/I]
[B]return[/B] d - c
(* Ergebnis: 0 *)