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
No se prohibió silenciosamente. Pero abiertamente, después de dos advertencias. Este es un foro decente para gente seria. Tus vastos conocimientos no valen nada si no puedes transmitirlos en tu lengua materna (espero que no sea el albanés).
Léalo todo.
Muchas veces.
Diferentes ramas.
Pero todavía no he visto un resumen. Me gustaría tener detalles y claridad sobre esta cuestión.
Señores, por favor, si no es un fastidio, hagan una conclusión final (sobre esto) -
a todos, usuarios, perdedores, tontos, samovares - al comparar números de tipo doble utilizamos lo siguiente:
stdlib, bool CompararDos(doble número1,doble número2);
o
if (NormalizeDouble((a-b)>0,Digits)) {...}
o
int CompararPrecio(doble a, doble b)
{
a -= b;
b = Punto / 2;
si (a > b) devuelve (1);
si (a < -b) devuelve (-1);
retorno (0);
}
o
doble a;
doble b;
int factor = MathRound( MathPow(10, digits) ); // digits es la precisión a comparar
Si comparamos precios, esta es la variable predefinida Dígitos
...
si (MathRound( (a - b) * factor ) != 0)
{
... // a != b
}
si (MathRound( (a - b) * factor ) == 0)
{
... // a == b
}
si (MathRound( (a - b) * factor ) > 0)
{
... // a > b
}
si (MathRound( (a - b) * factor ) < 0)
{
... // a < b
}
o
Cuando se comparan números de tipo doble con una precisión de hasta 4-5 dígitos, no es necesario elaborar más.
Saludos, Alexander.