Das Ergebnis "bleibt" eine Integer-Zahl, das sollte funktionieren:
int buytick =255; int selltick = 220; Print((double)buytick/selltick);
oder Du definierst beide Variablen gleich als double!
PS: Geändert, ich hatte das (double) vergessen - sorry!
Das Ergebnis "bleibt" eine Integer-Zahl, das sollte funktionieren:
oder Du definierst beide Variablen gleich als double!
genau das ist die Frage, speziell in der 2ten Version sollte es keine integer bleiben, da ist Fehler.
Wenn ich eine double definiere und 2 integer dividiere sollte eine double rauskommen, das machst jede andere Programmiersprache auch so
Falls es int bleiben sollen, dann hilft typecast
int a = 225; int b = 200; int x = a / b; // x = 1 double c = a / b; // c = 1.0 double d = (double)a / (double)b; // d = 1.125
genau das ist die Frage, speziell in der 2ten Version sollte es keine integer bleiben, da ist Fehler.
Wenn ich eine double definiere und 2 integer dividiere sollte eine double rauskommen, das machst jede andere Programmiersprache auch so
Die Dinge sind meist nicht so, wie man sich wünscht, sie seien es, sondern halt so wie sie sind.
Im MT ist meistens die erste Zahl maßgebend für das Typcasting - sorry, ich hatte das (double) vergessen.
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Hallo,
kennt noch wer das
Problem, das wenn ich 2 integerzahlen dividiere dann bekomme ich keinen Wert raus?
Als ergebnis bekomme ich entweder 0 oder 1
das bessert sich auch nicht wenn ich das ganze erweitere
gleiches Ergebnis,
es funktioniert erst, wenn ich die int in double ändere
warum?
das kann ja nur ein Fehler in der Plattform sein oder?
amando