¿Es posible evitar muchas "ores" (||) en las condiciones que provocan la misma acción? - página 5

 
borilunad:


Y esto no lo entiendo. ¿De dónde has sacado estas cifras? Y si te interesan los nombres cortos de las variables, prefiero los cortos a los largos. ¿O qué más? Sí, acabo de darme cuenta de que has añadido dos paréntesis antes de clo y al final después de clo a mi fórmula. Eso no es necesario en absoluto, perturba el cálculo. Pero gracias de todos modos.

<--- 10.444 = 8.087 > 3.908 ¿en qué idioma?


double a;<------------ es un número

( isCloseLastPosByTake() == True && Profit > ProClo / clo - GetProfitCloseLastPosByTake() * clo); <-------- esto es una comparación de miembros

a = (isCloseLastPosByTake() == True && Profit > ProClo / clo - GetProfitCloseLastPosByTake() * clo)

número = número > número ¿cómo se entiende esto?

 
pako:


double a;<------------ este número

( isCloseLastPosByTake() == True && Profit > ProClo / clo - GetProfitCloseLastPosByTake() * clo); <-------- esto es una comparación de miembros

a = (isCloseLastPosByTake() == True && Profit > ProClo / clo - GetProfitCloseLastPosByTake() * clo)

número = número > clo

Y ya he hecho con el bool como me aconsejaste:

bool a = false;

if(isCloseLastPosByTake() == True && Profit > ProClo / clo - GetProfitCloseLastPosByTake() * clo) a = true;


//Кстати, isCloseLastPosByTake() это член, а GetProfitCloseLastPosByTake() это число

Y funciona, como ya te he dicho en la página anterior. Gracias.
 
borilunad:
Según tengo entendido tienes variante para cumplir todas las condiciones, mientras que en mi caso solo basta con una condición, y aunque se cumplan más condiciones, cosa poco probable, ya que son muy diferentes, no se llegará a eso, porque una condición se disparará. ¡Si me he equivocado, justifícalo! ¡Siempre estoy contento de escuchar algo nuevo! Gracias.

No, no es así.

Si cualquier condición (A, B, C, D) = verdadera, la solicitud será verdadera.

Si todo =false, la solicitud será falsa.

 
icas:

No, no es así.

Si cualquier condición (A, B, C, D) = verdadera, la solicitud será verdadera.

Si todo =false, la solicitud será falsa.

Yo también probaré este. Si da un resultado positivo en velocidad, elegiré el suyo. Gracias.

Lo he intentado, la función Request() puesta fuera del inicio, pero el compilador me da un aviso:

'Request' - no se ha definido ninguna dll para la función importada C:\N-archivos de programa

Eso es todo, ahora funciona, pero creo que la variante de Rako es mejor, porque no necesito introducir la función adicional Request(). ¡Gracias!

 
Request() return() significaba
 
pako:
Request() return() significaba
Gracias, pero he probado la variante de icas y mi error al poner ; después de Request(), ahora funciona, pero creo que tu variante es mejor, como te dije antes. Gracias.
 
borilunad:
Gracias, pero fui yo quien probó la variante de icas y mi error, poner ; después de Request(), ahora funciona, pero creo que tu variante es mejor, como te dije antes. Gracias.

En la variante

 if((A + B + C + D + E) > 0) Action;

debe definir siempre todas las condiciones A, B, C, D, E.

En mi variante esto sólo se hace cuando todas las condiciones son falsas.

Piensa ahora en la velocidad.

 
icas:

En la variante

debe definir siempre todas las condiciones A, B, C, D, E.

En mi variante esto sólo se hace cuando todas las condiciones son falsas.

Piensa ahora en la velocidad.

Gracias. ¿Y cómo es eso? Tengo estas condiciones prescritas en el inicio, tras lo cual llamo a su Request(). Dónde y cómo hacer no entiendo. :(

Ten en cuenta que todas las condiciones son mutuamente excluyentes, y siempre serán todas falsas o sólo una verdadera y el resto falsas.

 

¡icas!

Realmente espero no haberlo hecho bien, ya que al marcar su opción no se redujo el tiempo de ejecución en el probador.

Tal vez puedas explicarme qué poner y dónde. ¡¡¡Gracias!!!

 

borilunad, cualquier llamada a la función añade una frenada innecesaria. Así que si quieres la máxima velocidad, debes deshacerte de todas las funciones Request() que realizan operaciones de una sílaba. Lo mismo se aplica a los bucles. Comprobar las condiciones en un bucle es siempre mucho más lento que una simple serie de if() anidados