Hallo Ludger,

die Zuweisung hat die niedrigste Priorität, das heißt es wird zuerst der Ausdruck der rechten Seite berechnet und dabei werden Zwischenvariablen angelegt, die der Compiler nach einem Regelwerk (für das ich mich nicht interessieren möchte!!!) angelegt. Du hast zwei Möglichkeiten: Du kannst Dich mit dem Regelwerk befassen, und wenn Du es noch komplizierter haben willst mit irgendwelchen Modifiern dieses auch noch verändern, oder Du legst die Zwischenvariablen selber an und rechnest in Einzelschritten, dann wird so gerundet, wie Du es hinschreibst.

mfg

Dieter Bender

Zitat Zitat von loeweadolf
hallo,

folgende Merkwürdigkeit:

D refe1 ...... s ... 20 8
D bigewi .... s ...... 5 2
D grammh .. s ...... 4 0
D biistbrt ... s ...... 3 0
D bibrut ..... s ...... 6 2


eval(h) ref1 = (bigewi * 1000 - grammh) / (biistbrt / 100) / bibrut;

Bei der Umwandlung wird als Fehlermeldung gebracht:
*RNF7551 10 Ergebnis der numerischen Operation wird auf 0 Dezimalstellen abgeschnitten

Das verstehe ich nicht, das Ergebisfeld ist doch groß genug !?

mfg. Ludger