0.02*4.9=0.098 -- non 0.98
output in formato 2 cifre decimali -- 0.098 sarà emesso arrotondato a 0.10 secondo le regole di arrotondamento
se l'output è in formato a 3 cifre -- verrà emesso il numero intero.
0.02*4.9=0.098 -- non 0.98
output in formato 2 cifre decimali -- 0.098 sarà emesso arrotondato a 0.10 secondo le regole di arrotondamento
Se l'output è in formato a 3 cifre, verrà stampato il numero intero.
Grazie, ho corretto i numeri.
Questo è il problema, devi prendere 2 cifre dopo il punto decimale. :) Perché è arrotondato? Come si può prendere un numero frazionario senza arrotondamento e solo 2 cifre dopo la virgola (0,09)?
Grazie, ho corretto le cifre.
Questo è il problema, bisogna prendere due cifre decimali. :) Perché è arrotondato? Come si può prendere un numero frazionario senza arrotondamento e solo 2 cifre dopo la virgola (0,09)?
Grazie, ho corretto le cifre.
Questo è il problema, bisogna prendere due cifre decimali. :) Perché è arrotondato? Come si può prendere un numero frazionario senza arrotondamento e solo 2 cifre dopo la virgola (0,09)?
int a=int(0.098/0.01); double b=a*0.01; Comment(DoubleToString(b,2));
tradurlo in una stringa e prendere il numero di caratteri che volete
Conosci un modo più semplice
E se lo fai:
int a=int((0.09*5)/0.01); double b=a*0.01; Comment (DoubleToString (b,2));
L'uscita è di 0,44 invece dello 0,45 richiesto.
E se lo fai:
L'uscita è di 0,44 invece dello 0,45 richiesto.
int a=int(MathFloor((0.98)/0.001)); double b=a*0.001; Comment(DoubleToString(b,2));
0,098, non 0,98. :)
int a = int (MathFloor ((0.098) / 0.001)); double b = a * 0.001; Comment (DoubleToString (b, 2));
Restituisce 1, e voleva un valore esatto = 0,09.
Conosci un modo più semplice?
Questa è la prima cosa che mi è venuta in mente, naturalmente ce ne sono di più semplici.
Non è nemmeno complicato, ma forse è più lento:
int DIGITS=2; string stroka=DoubleToString(0.09845,8); int P=StringFind(stroka,"."); Print(stroka); stroka=StringSubstr(stroka,0,P+DIGITS+1); Print(StringToDouble(stroka)); возвращает: 2014.10.04 11:32:53.731 normalize EURUSD,H4: 0.09 2014.10.04 11:32:53.731 normalize EURUSD,H4: 0.09845000
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Accetti la politica del sito e le condizioni d’uso
Saluti. Ho bisogno di aiuto per un problema:
Tutte le funzioni restituiscono 0,1. Anche se (0,02*4,9) = 0,098 e dovrebbe restituire 0,09.
Per favore, ditemi come ottenere il valore esatto che restituisce la mia calcolatrice? :)