Características del lenguaje mql5, sutilezas y técnicas - página 242
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Espera que la función MathMin() sea determinista. Es decir, que dé siempre el mismo resultado cuando los dos argumentos sean iguales. Y no un resultado diferente dependiendo de qué argumento es el primero o el segundo.
fxsaber tiene razón, esto es un problema.
ahhh..., entonces por que era tan confuso lo de " Matematicamente la misma expresion (resaltada) " y la union
era suficiente:
pero desde 0.0 == -0.0, entonces no puedo imaginar una situación en la que esto podría ser un problema y, afectar a nada en absoluto
una vieja característica de Min/Max en MQL - funcionan como los desarrolladores piensan, es decir, correctamente :-)
son las normas las que están equivocadas.
ahhh..., entonces por qué era tan confuso lo de " Matemáticamente la misma expresión (resaltada) " y la unión
era suficiente:
pero desde 0.0 == -0.0, entonces no puedo imaginar una situación en la que esto podría ser un problema y, de hecho, afectar a nada en absoluto
Si no fuera cero, entonces sería un problema. Y en cero no afecta a nada.
Para:
c++ - ¿Cuál es la diferencia entre -0 y 0? - Stack Overflow
Por lo tanto, todo lo que necesitas saber es que 0 = -0
Esa es toda la característica que no afecta a los cálculos y la lógica
Por eso escribí ambas versiones de MathMin para demostrar que funciones matemáticamente idénticas en lenguajes de programación producen resultados diferentes.
Parece ser un error.
Funciona bien en C++:
en la consola:
Long negative zero = 0
Pregunta de pasada a los desarrolladores. ¿Es normal que en la ventana de depuración la variable Union no se expanda y no reaccione en absoluto a un clic?
Los campos Union.Num1 y Union.Num2 se añadieron manualmente. Al menos así se pueden ver los valores...
Funciona como se esperaba. El primer bit (índice de bits 0) es el bit de signo que se establece para -0,0.
Estos son también más casos especiales en el formato ieee 754. https://www. wikiwand.com/en/IEEE%20754#Special_values
Parece ser un error.
Funciona bien en C++:
en la consola:
no hay ningún error. En C++ es lo mismo.
sólo cometiste un error con el formato y el tipo
prueba esto:
En el mismo contexto, puede examinar la representación de 64 bits de los dobles https://www.mql5.com/en/code/20822
o la versión abreviada
no hay ningún error. Es lo mismo en C++.
sólo cometió un error con el formato y el tipo
prueba esto:
Sí, yo estaba en un apuro. Gracias por la ciencia ))
A veces es necesario poner rápidamente un EA en el Probador. Puede hacerlo de la siguiente manera
Seleccione una fecha en el futuro y pulse CTRL+F5 en ME.