Fließkommazahl in Integer wie

Fileplayer

Level-1
Beiträge
67
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo an euch, ich habe eine Bitte. Ich muß den Ganzzahligen Anteil einer Fließkommazahl (liegt in 4 Byte) in einer Integer Variablen (in 2 Byte) kriegen, aber wie. Kann mir da einer helfen ? wäre echt Dankbar. Gruss und Danke sagt Günni
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Tacho!

Was haltet Ihr hier von?

Code:
L   REAL_ZAHL
TRUNC
T   INT_ZAHL

Beinhaltet allerdings keinerlei Prüfung, aber zum Wertebereich hat der TE ja auch nix gesagt.

Gruß,
Flinn
 
Ich muß den Ganzzahligen Anteil einer Fließkommazahl (liegt in 4 Byte) in einer Integer Variablen (in 2 Byte) kriegen

Man kann es z.B. so machen:
Code:
      L     #REAL_Wert
      TRUNC             // ganzzahliger Anteil des REAL -> DINT
      SPO   ERR         // Abbruch, wenn Fehler bei TRUNC (zu groß, zu klein, NaN)
      PUSH              // Akku2 = Akku1 = DINT-Wert
      ITD               // Akku1.0-15 -> DINT
      ==D               // wenn dabei das gleiche wie in Akku2 rauskommt,
      SPB   OK          // dann ist das Ergebnis im Bereich -32768 ... +32767 

ERR:  L     0           // Fehler: Wandlung nicht möglich -> z.B. durch Ergebnis = 0 anzeigen

OK:   T     #INT_Wert   // ganzzahliger Anteil (16 Bit) oder Fehlerwert 0 -> INT

Code:
L REAL
RND
// GGF. [COLOR="#FF0000"]DTI[/COLOR]
T INT
hmm, in dem anderen Thread wurde schon geklärt, daß es ein DTI nicht gibt ...

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Habs nicht gelesen *zugeb*

Hab nur das geschrieben was mir in den Kopf gekommen ist, und da ist irgendwie auch ein DTI hängen geblieben (glaube aber in einem anderen Zusammenhang)...

Grüße

Marcel

Edit: es ist mir wieder eingefallen, hab zu viel mit DATE_AND_TIME gespielt und das BTI zu nem DTI umgedichtet.. sorry!
 
TD wie Tausend Dank

Hallo, TD an alle von euch, hat gefunct !! Und der Bereich ist auch OK ( ganzahliger Bereich ist zwischen 0 und 200 :)

Danke
Gruss Günni
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Nochmal:
Ich muß den Ganzzahligen Anteil einer Fließkommazahl (liegt in 4 Byte) in einer Integer Variablen (in 2 Byte) kriegen
RND ist für diese Aufgabe die falsche Operation, weil RND rundet zur nächsten Ganzzahl: 3.6 --> 4
TRUNC liefert den ganzzahligen Anteil (ohne falsches runden): 3.6 --> 3

Harald
 
Zurück
Oben