Forum: Programmieren allgemein
by Klaus01,
6. Jun 2006
Also bei mir kommt da 120 € raus wenn ich 150 kg Mais verkaufe.
Grüße
Klaus
Forum: Programmieren allgemein
by Klaus01,
6. Jun 2006
GeldTimer.Interval := 10000 - round(sparen);
Das Timer interval ist vom Typ cardinal
Grüße
Klaus
Forum: Programmieren allgemein
by Klaus01,
6. Jun 2006
mais := 0,8 + Felder * 150;
Felder ist vom Typ Integer und hat bei Dir einen Wert von 2 bis 30
mais := 0,8 + 2 * 150
mais := 2,8 * 150
Irgendwie verstehe ich die Logik in Deinem Programm nicht?
Grüße
Klaus
Forum: Programmieren allgemein
by Klaus01,
6. Jun 2006
um dann mal auf eine früheren Beitrag von Dir zurück zu kommen:
mais := mais + Felder * 150;
wo Du gesagt hast 0,8 * 150 da kommt 150 raus
sollten aber 120 herauskommen.
Welche Variable soll denn den Wert 0,8 haben?
und wenn Du Felder mit case verwenden willst, dann kann Felder nicht double werden.
Forum: Programmieren allgemein
by Klaus01,
6. Jun 2006
nicht wo Du Felder ausgibst
wo bekommt die Variable Felder den Wert z.B. 0,8 zugewiesen?
Irgendwo muß das doch in Deinem Programm passieren.
Grüße
Klaus
Forum: Programmieren allgemein
by Klaus01,
6. Jun 2006
Felder sollte einen Typ haben, mit dem man Dezimalbrüche darstellen kann.
Darunter fällt auch der Typ double, real, extended ...
Wo bekommt bei Dir Felder denn einen Wert zugewiesen?
Wird dazu ein Editfeld benutzt?
Grüße
Klaus
Forum: Programmieren allgemein
by Klaus01,
6. Jun 2006
dann mal ein dumme Frage wie willst Du denn
0,8 * 150 rechnen, wenn Felder vom Typ Integer ist?
Wenn da bei Dir kein Fehler kommt, dann wird Felder irgendwo aufgerundet und
das wäre dann 1 und 1 * 150 ist gleich 150.
Grüße
Klaus
Forum: Programmieren allgemein
by Klaus01,
6. Jun 2006
was für ein Typ ist denn Deine Variable Felder und wo und wie
wird ihr ein Wert übergeben?
Grüße
Klaus