Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
Hi,
ich habe ein VI in dem ich zwei Werte (double 64-bit reell) auf 2 Komastellen miteinander vergleichen will. Der eine Wert wird berechnet, der andere von eine ADwin-Karte übergeben. Mein Problem ist dass ich keinen Vergleich durchführen kann da meine beiden Werte meist im hinteren Komabereich unterschiedlich sind und sie somit fast nie gleich werden.
Ich hab nun schon versucht mit der Funktion "auf nächst grössere Zahl runden" die Werte gleich zu bekommen, das Problem ist aber dass die Werte vorwärts- und rückwärts laufen, somit würde es mit dem grösseren Wert nur beim vorwärts laufen gehen, beim rückwärtslaufen nur mit dem nächstkleineren.
Nun brauch ich also eine Funktion die nicht auf den nächsten grössere oder kleineren Wert rundet, sondern genau eben bei xx,5 rundet.
Wo bekomme ich sowas her, als funktion habe ich es nicht in LV gefunden.
Hab Euch mal das Bild angehängt wie ich es zuerst versucht habe - hat aber nicht geklappt (das mit den multiplikation und division mit 100 ist n ur weil ich zwei Komastellen benötige!)
Mit Deinem Programm hast Du, was die Lösung Deines Problems betrifft, eine falsche Spur gelegt. Mit Runden geht das nicht. Beispiel Programm Svenni: Wenn die beiden Zahlen 10,00501 und 10,00499 sind, sind sie nach Deinem Kriterium gleich, das Programm liefert aber als Ergebnis "ungleich".
Das Problem ist doch ganz einfach: Wenn die Betrag der Differenz der beiden Zahlen nicht mehr al 0,01 ist, gelten sie als gleich, andernfalls nicht. Mit Runden hat das doch gar nichts zu tun.
Ein anderes sinnvolle Vorgabe könnte sein, das nicht die absolute, sondern die relative Abweichung zählt, daß also die Zahlen z.B. innerhalb einer Toleranz von einem Promille gleich sein sollen. Aber das wolltest Du ja nicht. Das läßt sich aber genau so einfach machen.
Korrektur: Im Bild muß natürlich 0.01 als Vergleichswert genommen werden.