Autor | Thema: Probleme bei Integer Variablen | | Datum:05.07.01 21:17 
(hendriklenz@gmx.de) | |
Hallo,
ich zerbreche mir schon seit Tagen den Kopf über die Integer Variablen von Profan dabei habe ich etwas seltsames entdeckt:
wenn ich die folgenden Code schreibe:
cls
Decimals 2
Declare test&
let test&=@div(@val("50000000099"),100)
print test&
print @div(@val("50000000099"),100)
dann wird beim anzeigen der Variable 5000000 angezeigt und beim direkten anzeigen nach dem umrechnen 500000000.99 ?!?
Richtig ist das 2. Ergebnis aber warm klappt das mit der Variable nicht. ICh muss Variablen benutzen da ich mathematische Funktionen durchführe und die Ergebnise in Datenbanken und Variablen (Integer) speichern muss!
Wer weiß hier einen Rat?
Vielen Dank und Grüße
Hendrik
|
| | Datum:05.07.01 22:04 
(frankabbing@12move.de) | |
Hallo,
Warum das so ist, weiß ich leider auch nicht, aber vielleicht solltest du zum Rechnen besser Fließkommazahlen verwenden, die sind doch genauer.
Bis dahin,
Frank
|
| | Datum:05.07.01 22:52 
(rgh-soft@t-online.de) | |
Ganz einfach:
INTEGER-Variablen können - wie der Name schon sagt - nur Integer-Zahlen, also Ganzzahlen, aufnehmen. Die haben nun mal keine Nachkommastellen. Und wird das Ergebnis einer Berechnung in einer Integervariablen gespeichert, werden alle Nachkommastellen abgeschnitten.
Für Fließkommazahlen (Zahlen mit Nachkommastellen) sind die Fließkommavariablen, die FLOAT-Variablen, mit dem Ausrufezeichen zu verwenden!
|
| | Datum: 05.07.01 23:18 
(hendriklenz@gmx.de) | |
Ja das klappt jetzt auch soweit, ich habe nur noch ein Problem:
@AddString(auswahl%,@add$("Nr.",add$(&dbRecNo,@add$(" -DM ",@Str$(@Round(@Div(@Val(@dbget$("Betrag")),100),2))))))
Das Datenbankfel enthält eine 11 stellige Zahl im Interpreter-Modus wird diese Korrekt angezeigt aber compiliert als EXE-Datei werden nur 10 Ziffern dargestellt?!?
Woran liegt denn das jetzt noch ?!?
Vielen Dank und Grüße HEndrik
|
|
|