Obtener el número de decimales de cualquier número (no sólo las comillas) evitando Digits() en MQL4 y MQL5 - página 6

 
Aliaksandr Hryshyn:
¿Por qué?

Aquí está la adición

void OnStart()
{
 double p = 0.07;
 Print(p);
 Print(log10(p));
}/*******************************************************************/

Resultado

2018.11.05 10:45:32.678 !00 (GBPJPY,H1) 0.07000000000000001
2018.11.05 10:45:32.678 !00 (GBPJPY,H1) -1.154901959985743
 
Alexey Viktorov:

Aquí está la adición

Resultado

MathAbs(log10(Punto()))
Compruébalo).
 
Y busquemos cómo apilar sin un operador + .
 
Aliaksandr Hryshyn:
MathAbs(log10(Punto()))
Comprueba esto).

¿Por qué lo necesito? Ya sé que el 0,00001 se imprime sin distorsión. Al fin y al cabo, la cuestión del tema es determinar el número de decimales de cualquier número, no sólo de _Punto . Te he mostrado en qué versiones no funcionará tu sugerencia.

 

Como ejercicio mental, hay que representar la parte fraccionaria como una fracción natural y hacer algo con el divisor/divisor (encontrar la fracción no periódica más cercana, por ejemplo)

Averiguar telepáticamente "cuántos dígitos te dio el remitente" no servirá de nada, pero es divertido.

 
   double b=3.00000000000000001;
   int i;
   for(i=0; i<16; i++)
    if(fabs(b-NormalizeDouble(b,i))<DBL_EPSILON) break;
   Print(NormalizeDouble(b,i)," : ",i);


 

Vuelve a tus cabales. Esto es una tontería que ni siquiera debería discutirse seriamente.

El autor simplemente tiene una total incomprensión del funcionamiento interno de las variables dobles.

 
Mesaoria:

Vuelve a tus cabales. Esto es una tontería que ni siquiera debería discutirse seriamente.

El autor simplemente tiene una total incomprensión del funcionamiento interno de las variables dobles.

No he pretendido saberlo todo, será mejor que me digas qué es lo que falla o que me muestres tu variante
 
Mesaoria:

Vuelve a tus cabales. Esto es una tontería que ni siquiera debería discutirse seriamente.

El autor simplemente tiene una falta total de comprensión del funcionamiento interno de las variables dobles.

Por favor, ilumínanos a los pobres y débiles.

 

¿Cuándo se terminará el algoritmo? Hace tiempo que es necesario utilizarla.