Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 108

 
-Aleks-:

Así que tengo una sonda de este tipo - se puede poner una línea en largo, pero necesito doble para los cálculos con un punto decimal.

Bueno, esto parece funcionar bien.

double CalcY=StringToDouble("0.01234567890001");
Print ("CalcY=",DoubleToString(CalcY,14));

2017.02.05 23:52:50.190 00 EURUSD,M1: CalcY=0.01234567890001

 
Vitalie Postolache:

Esto parece funcionar bien.

double CalcY=StringToDouble("0.01234567890001");
Print ("CalcY=",DoubleToString(CalcY,14));

Tengo 18 dígitos en un número.

 
-Aleks-:

Tengo 18 dígitos en un número.

Quién lo tiene fácil hoy en día...

La salida de texto es sólo de 16 caracteres, está escrito en blanco y negro en la documentación. Y los cálculos son hasta el límite del tipo de datos.

 
Vitalie Postolache:

Quién lo tiene fácil hoy en día...

La salida de texto es sólo de 16 caracteres, está escrito en blanco y negro en la documentación. Y los cálculos - hasta el límite proporcionado por el tipo de datos.

Así que estoy hablando de cálculo - número está bien sin preformar en la cadena. Pero el cálculo doble en sí con un número está limitado, según tengo entendido, a 15 dígitos. ¿O se trata de 15 dígitos en ambas direcciones: antes del punto decimal y después?

DBL_MIN

Valor mínimo positivo que puede ser representado por el doble

2.2250738585072014e-308

DBL_MAX

Valor máximo que puede ser representado por el tipo doble

1.7976931348623158e+308

DBL_EPSILON

El número más pequeño para el que se cumple la condición 1,0+DBL_EPSILON != 1,0

2.2204460492503131e-016

DBL_DIG

Número de decimales significativos

15

DBL_MANT_DIG

Número de bits en la mantisa

53

DBL_MAX_10_EXP

Valor decimal máximo del grado del exponente

308

DBL_MAX_EXP

Valor binario máximo del grado del exponente

1024

DBL_MIN_10_EXP

Valor decimal mínimo del grado del exponente

(-307)

DBL_MIN_EXP

Valor binario mínimo del grado del exponente

(-1021)

 
-Aleks-:

Entiendo que el doble con un número está limitado a 15 dígitos. ¿O son 15 dígitos en ambas direcciones, antes y después del punto decimal?

El límite es un máximo de 15 dígitos, por lo que la coma es irrelevante.

 
int Counter (int type, string sy, enum counterEnum{TIME_1_SY, TOTAL, LOCK})
{
...
}
Por favor, aconséjeme, quiero declarar una enumeración en los parámetros de la función, para que sólo se puedan seleccionar los siguientes valores como tercer parámetro cuando se llame a la función:
TIME_1_SY, TOTAL o LOCK

¿Cómo ponerlo en práctica?

Lo resolví, resultó ser muy sencillo:

enum CE {TIME_1_SY, TOTAL, LOCK};
int Counter (int type, string sy, int counterEnum)
{
...
}
 

Hola, ¿podría decirme el código de este programa

if(ObjectFind("Rectangle 33579")==0) Alert("YES");
else Alert("NO");

Señala varias veces "SÍ" y luego varias veces "NO" si el objeto existe y todo el tiempo "NO" si el objeto no existe, pero ¿por qué tal síforo cuando el objeto existe?

 
Maksym Mudrakov:
int Counter (int type, string sy, enum counterEnum{TIME_1_SY, TOTAL, LOCK})
{
...
}
Por favor, aconséjeme, quiero declarar una enumeración en los parámetros de la función, para que sólo se puedan seleccionar los siguientes valores como tercer parámetro cuando se llame a la función:
TIME_1_SY, TOTAL o LOCK

¿Cómo ponerlo en práctica?
Declarar una enumeración en el ámbito global. Y utilizar la enumeración como un tipo de parámetro en la función.
 
vivatforex:

Hola, podrías decirme por favor, aquí está el código del programa

if (ObjectFind("Rectángulo 33579")==0) Alert("YES");
si no Alerta("NO");

Señala varias veces "SÍ" y luego varias veces "NO" si el objeto existe y todo el tiempo "NO" si el objeto no existe, pero ¿por qué tal síforo cuando el objeto existe?

Pruébalo así:

if (ObjectFind(0,"Rectangle 33579")<0) Alert("НЕТ");
else Alert("ДА");
 

Hola a todos.

¿Quién puede ver por qué se muestra así?

Es decir, las funciones son diferentes propiedades pero la visualización es la misma.

También con otros dos objetos del mismo tipo, sólo funciona uno de ellos, los demás parámetros se ignoran

Archivos adjuntos:
Razón de la queja: