¡¡¡Un resultado realmente sorprendente!!! - página 3

 
nen >> :
Hay una norma y hay que cumplirla. Y si los desarrolladores producen su propia norma que contradice la generalmente aceptada, entonces... la suciedad es... basura.

Te dieron una herramienta para trabajar. Deberías dar las gracias a los desarrolladores. Si no te gusta, no lo uses. Escribe en C.

 
En MQL4 la operación es
bool r1 = a>=s && a<=f && s<=f || (a>=s || a<=f) && s>f;

sucede así :



bool r1 = a>=s && a<=f && (s<=f || (a>=s || a<=f)) && s>f;

y la norma es ésta:



bool r1 = (a>=s && a<=f && s<=f) || ((a>=s || a<=f) && s>f);
 
Dedka писал(а) >>

Se le ha dado una herramienta para trabajar. Deberías dar las gracias a los desarrolladores. Si no te gusta, no lo uses. Escribe en C.

No hay que reinventar la rueda. Hay que atenerse a las normas que se enseñan en la escuela.

Si cada persona quiere hacer lo que le da la gana, será un desastre...

Y uso la herramienta que me dieron los desarrolladores. No hay quejas sobre los resultados de los desarrollos...

 

Sí, por supuesto que la pereza natural es el motor del progreso. Comprendo el argumento: dar una herramienta y utilizarla.


Pero una cosa.


La herramienta se anuncia como un lenguaje con sintaxis similar a C.


Es una pena que la similitud se sustituya de forma tan imperceptible en el corazón de las operaciones lógicas.


Ciertamente pongo paréntesis, pero los pongo en Java y en C y tomo esos paréntesis de la forma en que se escriben en Fortran y de la forma en que me enseñaron en la universidad.

 
Ponemos paréntesis, por supuesto, pero cuando la multiplicación es menor que la suma.
Me gustaría desearle "¡más éxito en la lucha contra los peculadores!"
 
sol >> :

Sí, por supuesto que la pereza natural es el motor del progreso. Comprendo el argumento: dar una herramienta y usarla.


Pero una cosa.


La herramienta se anuncia como un lenguaje con sintaxis similar a C.


Es una pena que la similitud se sustituya de forma tan imperceptible en el corazón de las operaciones lógicas.


Ciertamente pongo paréntesis, pero los pongo en Java y en C y tomo esos paréntesis de la forma en que se escriben en Fortran y de la forma en que me enseñaron en la universidad.


De hecho, incluso las distintas implementaciones de C++ tienen varios estándares incompatibles. Y aunque Java tiene un único estándar para todas las implementaciones, es incompatible con la mayoría de las implementaciones de C++ en algunos aspectos.



Por ejemplo:


int a = 3;

int b = 5;


b += a += b += 7;


Java dará b = 20;

C++ dará b = 27 en la mayoría de las implementaciones;


Así que no engullan, señores: no hay normas comunes, hay manuales de lenguaje de programación y paréntesis.

 
Dedka писал(а) >>

Se le ha dado una herramienta para trabajar. Deberías dar las gracias a los desarrolladores. Si no te gusta, no lo uses. Escribe en C.

Pero no viertas tu veneno aquí.

Demuestra la inexactitud de la herramienta. Esto ayuda a los desarrolladores a mejorar el producto, eliminar errores, fallos, etc. Por supuesto, si lo consideran necesario y posible. Gracias a posts como este, el MQL mejora de construcción en construcción.

S.Y. También se han detectado bastantes fallos en C. Si se desciende en la cadena, el siguiente consejo debería ser escribirlos directamente en códigos de máquina - todo funcionará definitivamente allí ))))

 
Rosh >> :

Para ser honesto, nunca he aprendido las prioridades de las operaciones lógicas y de los bits. Por pereza innata, sólo pongo paréntesis en todos los lugares adecuados.

"Hay mucho, amigo Horace...."

Estoy muy de acuerdo.

---

Odio las construcciones que hay que vadear como un bosque de coníferas.

Prefiero escribir un código más claro - es más fácil para mí después

---

por ejemplo:

Siempre he preferido crear una consulta SQL de lujo

3 simples, por cierto, ya que la práctica demuestra que tiende a funcionar más rápido

siempre que la primera consulta elimine todo lo posible

además, el código se vuelve más claro

---

en C y MQL4 de forma similar! Intento escribir construcciones más sencillas

y prefiero poner paréntesis yo mismo.

 

¡Para! ¿Qué tiene que ver esto con las normas o las convenciones? Es un área de error totalmente diferente que pone patas arriba todas las matemáticas.

La base matemática de la electrónica y la informática digital es el álgebra de la lógica (o álgebra de Boole), en la que definitivamente (axiomáticamente)

La suma lógica de "o" (disyunción ) y la multiplicación lógica de "y"(conjunción).

¿Cómo entonces todos los KNFs y DNFs que estudiamos en la uni? Creo que tenemos que arreglar esto urgentemente y no avergonzarnos.

 
Galaxy писал(а) >>

¿Qué pasa con todos los QNFs y DNFs que estudiamos en la universidad?

Estudió lógica para programar hace más de 30 años. Descifrar las abreviaturas de KNF y DNF.