![]() |
Extended / integer
Hallo
ich versuch grade ein Integer durch eine Extended zu teilen und bekomme immer die fehlermeldung Ungültige Gleitkommaoperation Extended / zb. 5 geht - was mach ich falsch? Homer |
Re: Extended / integer
Du kannst bei Fließkommawerten nur / verwended, div ist nur für Integer-Werte.
|
Re: Extended / integer
aber warum geht
Extended / 5 geht zahl : Integer; zahlt := 5 Extended / zahlt geht nicht ???? |
Re: Extended / integer
Also, bei mir geht das hier:
Delphi-Quellcode:
Und e ist am Ende 1.3333333333..., kann dein Problem nicht nachvollziehen. :?
var
e: Extended; i: Integer; begin e := 4; i := 3; e := e / i; end; |
Re: Extended / integer
Moin Homer,
[EDIT] Mist, zu spät :mrgreen: [/EDIT] So funktioniert's bei mir
Delphi-Quellcode:
:gruebel:
var
iVar : integer; eExt : extended; iRes : integer; eRes : extended; begin eExt := 1.001; iVar := 1000; iRes := trunc(eExt / iVar); eRes := eExt / iVar; ShowMessage(IntToStr(iRes)+#13#10+FloatToStr(eRes)); end; |
Re: Extended / integer
var
e: Extended; i: Integer; e := Floatwert aus der DB i anzahl x Label.Caption := FormatFloat('0.00 "€"', e / i); kommt der Fehler |
Re: Extended / integer
Wie gesagt, dein Fehler tritt bei mir nicht auf.
|
Re: Extended / integer
das ist es ja was ich nicht verstehe
es ja auch so richtig , trotzdem bekomme ich den fehler ;-(( |
Re: Extended / integer
Moin Homer,
als Workaround, bzw. zum Testen, könntest Du den Wert der Integervariablen vorab einer Extendvariablen zuweisen, und die dann im FormatFloat benutzen. |
Re: Extended / integer
der selber fehler
var e: Extended; i: Extended; e := Floatwert aus der DB i anzahl x Label.Caption := FormatFloat('0.00 "€"', e / i); kommt der Fehler |
Re: Extended / integer
Moin Homer,
:shock: probier mal die Maske 0.00 mit Hilfe der Variablen DecimalSeparator zusammenzubauen, oder schreib' einfach direkt ein , |
Re: Extended / integer
das gleiche
|
Re: Extended / integer
dasgeht ja auch nicht
e: Extended; i: Extended; e := e/i |
Re: Extended / integer
Ich würde sagen, du hast ein Probelm das NICHT mit Delphi/Pascal zu tun hat. Da musst können wir dir wohl auch nicht helfen.
|
Re: Extended / integer
Moin Homer,
welche Werte haben die Variablen? |
Re: Extended / integer
der
e bekommt ne wert aus DB ist Float i ist anzahl datensätze und wenn ich für i eine zb 5 einsetze geht es !!!! nur nit mit ner Variablen i |
Re: Extended / integer
Dann liegt dein Problem vermutlich an der DB-Software, die wird warhscheinlich einen falschen Wert liefern, vielleicht NAN oder einen anderen, den der Prozessor in diesem Kontext nicht verarbeiten kann.
|
Re: Extended / integer
e kommt ja aus der DB
und wenn ich e / 5 teil geht es nur wenn ich e / i teile geht es nicht als Unit habe ich noch Math eingebunden |
Re: Extended / integer
Bevor du e durch i teilst, solltest du vielleicht mal i ausgeben und uns sage, was drinsteht, vielleicht liegst an dem Wert von i. Was heisst vielleicht, garantiert wohl eher.
|
Re: Extended / integer
Moin Homer,
gib' doch mal einen Beispielwert für e. Bei mir tritt das mit D7 (PE) nämlich nicht auf. :gruebel: |
Re: Extended / integer
i ist immer Integer
wird vorher ausgelesen anzahl datensätze wie 5 7 9 usw |
Re: Extended / integer
0
es ist 0 irgendwie bekommt erst eine 0 rein |
Re: Extended / integer
ich frage bevor ich rechne auf größer 0 ab
und es geht Extended / 0 ist irgendwie blöde |
Re: Extended / integer
Das ist ja klar. x/0 ist mathematisch nicht definiert und deswegen bekommst du eine Exception, wenn du das tust.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:39 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz