FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Resta de numeros reales.
Hola Gente!!!!!
Tengo un problema y la verdad no tengo idea de como solucionarlo. tengo declaradas 3 variables de tipo Real, le asigno un numero real a cada una de ellas y luego las quiero restar entre si, y me da un numero exadecimal como resultado. ejm. variable1:=156.23; variable2:=156.23; variable3:=0; resultado:=variable1 - variable2 - variable3; en la variable resultado debería obtener un 0;pero me da un numero exadecimal... Si alguien me puede dar una mano agradecido.... Gracias... |
#2
|
||||
|
||||
Como una solución sencilla, te puedo decir que compares siempre los resultados de redondeados, o que tengas en cuenta un pequeño margen de error.
Código:
function SonIguales(const Nro1, Nro2: Extended): Boolean; begin Result := Nro1 - Nro2 < 5.0e-324; end;
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla. Última edición por delphi.com.ar fecha: 30-07-2003 a las 18:19:31. |
#3
|
|||
|
|||
Mucha gracias, evidentemente el problema venia por ese lado
lo solucione con la funcion roundto(variable,-2).. Gracias... |
|
|
|