REAL Wert Vergleichen

tomatensaft

Level-1
Beiträge
159
Reaktionspunkte
5
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich habe einen Addierer wobei ich immer einen Wert jede Zehntel Sekunde um 0.1 erhöhe, und wenn ein bestimmter Wert (z.B. 10.0) erreicht wurde, dann wird der Addierer deaktiviert.

Wenn ich mit einem den Wert mit z.B. =>R auf 10.0 Vergleichen will, wird nie genau 10.0 erfasst, sondern immer ein Wert über 10.0 (z.B. 10.02 oder 10.09, usw)

Bei Subtrahieren von Real Werte habe ich das gleiche Problem!

Jemand eine Idee was das sein könnte ? Ungenauigkeit bein Addieren ?:confused:
 
Wie machst du das Addieren alle 0,1s? Im OB35?
ist der Vergleicher auch im OB35?

Kannst Du den Code hier reinstellen?

Ok keine Antwort nur Fragen *sorry* ;o)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Sieh dir mal das ganze an wenn der zähler hochläuft

1
1,1
1,2
usw
8,0
8,99999
9,09999

usw

würde mal sagen das real die zahl nicht genauer berechnen kann

6 stellen genauigkeit usw usw usw
 
Der addierer liegt Testeshalber mal im OB1, also nicht in irgend einem anderen OB.

Normalerweise wenn der Wert in diesem Beispiel Addiert wird, und auf den Wert 7.0 kommt, dürfte er nicht mehr hochzählen, oder irre mich da ?
 

Anhänge

  • info.JPG
    info.JPG
    15,8 KB · Aufrufe: 26
Warum erhöhst du das ganze nicht um den Faktor 10 und benutzt INTs, müsstest evtl später nochmal umrechnen wenn du denn 1/10Wert brauchst aber damit hätte sich die ungenauigkeit erstmal erledigt
 
Kommawerte aus dem dezimalen System lassen sich nur begrenzt in binäre werte umwandeln, unschön ist hier aber die mangelnde rundung der werte (wer braucht schon werte bis auf 6 stellen hinter dem komma, wir wollen ja nicht zum Mars fliegen oä)
zur info: genau darstellabr sind nur werte wie 1/2, 1/4, ... und die summen daraus
 
Zurück
Oben