borilunad: ¡Hola Allis! La impresión debe ser prescrita donde no hay lectura de la garrapata! Puse en la impresión si hay un error, y si se abrió, y así se prescribe en el libro de registro que se abrió, y sólo una vez!
Buenas tardes a todos. Hay un indicador (superior en la figura) que dibuja sus valores (+1, 0, -1) en la barra número 0, pero el cálculo se realiza por la barra número 1. Necesito escribir un indicador que cuente el número de barras en cada bloque continuo separado de +1 y -1 del indicador superior y todo el historial (la media en la figura, la altura del gráfico de barras en unidades correspondientes al número de barras).He hecho un indicador (abajo en la figura), pero empieza a dibujarse sólo en el momento de la instalación en la ventana (línea vertical azul).¡Ayuda quien pueda!
¡Este es el resto de la división! ¡Mira en los pasos de aritmética y en tu impresora!
Póngalo y sólo verá los dos resultados alternativamente:
int x = MathRand() % 2;
Print("x =",x);
No entiendo la lógica. En el libro que leí:
Si quieres calcular el resto de la división de la variablea por la variable by escribir el resultado en la variable ostatok, el operador de asignación tiene el siguiente aspecto:
ostatok = a % b;
Resultaque en nuestro caso, cuandoMathRand() sedivide por 2, el valor de x debe ser 0 o 1. ¿Por qué debería ser 0 o 1 de repente? Por ejemplo, aparecerá un número 9 al azar. 9 % 2 = 4.5. El resto de es igual a 4.
Algo que no entiendo la lógica. En el libro que leí:
Resultaque en nuestro caso, cuandoMathRand() sedivide por 2, debería haber un valor de x igual a 0 o 1. ¿Por qué debería ser 0 o 1 de repente? Por ejemplo, aparecerá un número 9 al azar. 9 % 2 = 4.5. El resto de es igual a 4.
Cuando algo no cuadra, basta con un par de clics para responder...
Hay algo en la lógica que no entiendo. En el libro que leí:
Resultaque en nuestro caso, cuandoMathRand() sedivide por 2, el valor de x debe ser 0 o 1. ¿Por qué tiene que salir 0 o 1 de repente? Por ejemplo, aparecerá un número 9 al azar. 9 % 2 = 4.5. El resto de es igual a 4.
Victor, no confundas int con doble. Así queint x = MathRand() % 2; ¡da 0 o 1! No puede dar 0,1 ni 0,9, ni 1,1 ni 1,9, porque los decimales en int se redondean y ¡se descartan los menores de 0,5! Y el signo % significa el resto de la división, no el signo de división. El signo de división es /.
Pongo tu ejemplo con 9 y obtengo un único resultado, 1, porque no hay aleatoriedad:
int x = 9 % 2;//MathRand()Print("x =",x);
Tú lo preguntas:
9 : 2 = 4,5 Son números dobles.
Si descartas la parte fraccionaria, obtienes 4. ¿De dónde sacaste 1?
Respondo: ¡entonces 0,5 se redondea a 1!
¡Lo que es interesante, cuando puse un punto y cero (2,0) a 2, el compilador me dio un error diciendo que % requiere sólo un entero!
Así que aunque pongas doble x, sigue saliendo un int entero. Gracias, Víctor, por tus dudas. ¡Gracias a ellos y a vosotros he realizado una interesante investigación, que ampliará mis posibilidades de transformaciones matemáticas! ¡Te debo una copa (virtual)! :))
¡Hola Allis! La impresión debe ser prescrita donde no hay lectura de la garrapata! Puse en la impresión si hay un error, y si se abrió, y así se prescribe en el libro de registro que se abrió, y sólo una vez!
Sí, eres un mago)) Gracias.
Eres un mago)) Gracias.
Buenas tardes a todos. Hay un indicador (superior en la figura) que dibuja sus valores (+1, 0, -1) en la barra número 0, pero el cálculo se realiza por la barra número 1. Necesito escribir un indicador que cuente el número de barras en cada bloque continuo separado de +1 y -1 del indicador superior y todo el historial (la media en la figura, la altura del gráfico de barras en unidades correspondientes al número de barras).He hecho un indicador (abajo en la figura), pero empieza a dibujarse sólo en el momento de la instalación en la ventana (línea vertical azul).¡Ayuda quien pueda!
Código
¡Este es el resto de la división! ¡Mira en los pasos de aritmética y en tu impresora!
Póngalo y sólo verá los dos resultados alternativamente:
No entiendo la lógica. En el libro que leí:
Si quieres calcular el resto de la división de la variablea por la variable by escribir el resultado en la variable ostatok, el operador de asignación tiene el siguiente aspecto:
Resultaque en nuestro caso, cuandoMathRand() sedivide por 2, debería haber un valor de x igual a 0 o 1. ¿Por qué debería ser 0 o 1 de repente? Por ejemplo, aparecerá un número 9 al azar. 9 % 2 = 4.5. El resto de es igual a 4.Algo que no entiendo la lógica. En el libro que leí:
Cuando algo no cuadra, basta con un par de clics para responder...
P.D. ostatok = 9 % 2 = 1.
Cuando algo no cuadra, basta con un par de clics para responder...
P.D. ostatok = 9 % 2 = 1.
Bueno, está escrito:
"Ladivisión con resto(división en módulo,encontrar el resto de la división,el resto de la división) es unaoperaciónaritmética que da como resultado dosnúmeros enteros:un cociente incompleto yel resto de la división de un número entero por otronúmero entero."
9 : 2 = 4,5 Son números dobles.
Si cortas la parte fraccionaria, es 4. ¿De dónde sacaste el 1?
Resultaque en nuestro caso, cuandoMathRand() sedivide por 2, el valor de x debe ser 0 o 1. ¿Por qué tiene que salir 0 o 1 de repente? Por ejemplo, aparecerá un número 9 al azar. 9 % 2 = 4.5. El resto de es igual a 4.Hay algo en la lógica que no entiendo. En el libro que leí:
Victor, no confundas int con doble. Así queint x = MathRand() % 2; ¡da 0 o 1! No puede dar 0,1 ni 0,9, ni 1,1 ni 1,9, porque los decimales en int se redondean y ¡se descartan los menores de 0,5! Y el signo % significa el resto de la división, no el signo de división. El signo de división es /.
Pongo tu ejemplo con 9 y obtengo un único resultado, 1, porque no hay aleatoriedad:
Tú lo preguntas:
9 : 2 = 4,5 Son números dobles.
Si descartas la parte fraccionaria, obtienes 4. ¿De dónde sacaste 1?
Respondo: ¡entonces 0,5 se redondea a 1!
¡Lo que es interesante, cuando puse un punto y cero (2,0) a 2, el compilador me dio un error diciendo que % requiere sólo un entero!
Así que aunque pongas doble x, sigue saliendo un int entero. Gracias, Víctor, por tus dudas. ¡Gracias a ellos y a vosotros he realizado una interesante investigación, que ampliará mis posibilidades de transformaciones matemáticas! ¡Te debo una copa (virtual)! :))
Bueno, eso es lo que dice:
"Ladivisión con resto(división en módulo,hallar el resto de la división,resto de la división) es unaoperaciónaritmética que da como resultado dosnúmeros enteros:un cociente incompleto yel resto de la división de un número entero entre otronúmero entero."
9 : 2 = 4,5 Son números dobles.
Si cortas la parte fraccionaria, es 4. ¿De dónde sacaste el 1?
¿Cuál es el número entero más cercano a 9 que es divisible por 2 sin resto? Luego resta ese número del divisor (9). ¿Qué has conseguido?
P.D. Si fallas, puedes imprimir el resultado: Print ("ostatok = ", 9 % 2);
laveosa 07.03.2013 21:15
Hola, ¿pueden decirme cómo sustituir Symbol() por "EURUSD" en Ordersend() ¿o qué?
laveosa 07.03.2013 21:15
Hola. Me pueden decir cómo reemplazar Symbol() por "EURUSD" en Ordersend() ¿o qué?