![MQL5 - Lenguaje de estrategias comerciales para el terminal de cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
límite en el código, si 1/2=0,5 entonces aparentemente el redondeo da ahora 0 en lugar de 1?
Para comprobar la hipótesis he cambiado el código
Basura total - Tengo error de división por cero otra vez
Código de ME como imagen - tal vez estoy ciego pero no entiendo lo que está pasando
El error sigue en la misma línea.
El archivo es el mismo, ya que la línea de error se ha desplazado debido a la adición de código para la impresión.Debería usarun estilizador - vería inmediatamente que su cadena problemática NO está dentro de la zona de control if(limit==0)
Debería utilizarun estilizador - vería inmediatamente que su cadena problemática NO está en la zona de comprobación if(limit==0)
Así que no necesita entrar, ¿por qué?
Este código.
Colgando el terminal.
límite en el código, si 1/2=0,5 entonces aparentemente el redondeo da ahora 0 en lugar de 1?
Para comprobar la hipótesis he cambiado el código
Código:
Resultado:
Código:
Resultado:
Esa es la cuestión, y antes aparentemente 1/2 dio 1, no cero.
Esa es la cuestión, y antes, 1/2 debía ser un 1 en lugar de un cero.
No. Siempre se redondea así.
No. Siempre se redondea así.
Así que es algo más después de todo...
Cambiado el código de la impresión
y ahora tengo...
¿Por qué?
Cambiado el código de la impresión
y ahora tengo...
¿Cómo es eso?
Todo es correcto. Si el límite se calcula con la fórmulalímite=(int)(tiempo_de_parada-hora_de_inicio)/PeriodoSegundos(_Periodo);
entonces el resultado será = 0.
Ahora tenemos que ver cómo se forman los tiempos de parada y arranque.