¿FALLAN LAS MATEMATICAS?

29/12/2004 - 11:19 por PAPACORTIJO | Informe spam
Hola al grupo.
Me he encontrado con este problema:

La diferencia entre dos numeros con dos decimales me da un numero con
muchos decimales y no cuadra.
La celda de la diferencia esta con formato de 16 decimales.

22,13
22,00
0,1299999999999990

22,13 menos 22,00 = 0,1299999999999990 ***** NO ES CORRECTO *****

Para que cuadre tengo que REDONDEAR con dos decimales.

¿ALGUIEN ME PUEDE RESPONDER A ESTE FENOMENO? GRACIAS

Preguntas similare

Leer las respuestas

#6 KL
29/12/2004 - 23:50 | Informe spam
mas explicaciones en castellano:

http://groups.google.es/groups?hl=e....gbl#link2

http://groups.google.es/groups?hl=e...gp03#link2

por mi parte lo q creo entender del articulo de Microsoft es q este error en
concreto se debe
mas bien a otro fenomeno. Es que el ordenador procesa los valores en formato
binario y no decimal, o sea q el valor 0.1 q consta de dos digitos y es
perfectamente finito, en la memoria del PC es representado por un valor
binario (0001100110011100110011 y 0001100110011100110011 etc.) q ademas de
ser bastante largo encima se puede repetir infinitamente.

Dado q la memoria esta limitada (no se puede almacenar una cadena de numeros
infinita) esta se ve obligada a redondear hacia abajo el valor binario, q es
donde se produce el error en primera instancia. De ahi el numero decimal
resultante ya es inpreciso (se le quita aproximadamente -2.8E-17 usando la
notacion cientifica o -0.000000000000000028).

Por si fuera poco, la famosa especificacion IEEE 754 hace q el valor una vez
convertido en decimal se limite a 15 digitos significativos (entiendo q
Excel habria sido capaz de procesar 28 digitos significativos si no fuera
por IEEE 754). O sea q el resultado se trunca de manera q solo quedan 15
decimales y todos los demas se convierten directamente en 0 sin siquiera
redondear.

Asi es como lo tengo entendido.

Saludos,
KL
(XL 97, 2000, 2002)

Ojo - mi separador de argumentos en las formulas es la coma ",".
Puede q necesites cambiarla por punto y coma ";".

Para usar mi direccion de correo electronico privada
borra "NOSPAM" y "PLEASE" antes de usarla.

"Iago" wrote in message
news:%
Puesaunque KL ha dejado un enlace para la explicacion, sinceramente,
no
se si es por la traduccion, o porque lo mio no es el ingles, pero no acabo
de entender porque ocurre esto. Hablaban de que hace una operacion antes
que
otra, pero...en fin q no entendia el razonamiento.
KL dice que algo de 15 digitos significativos, pero no conozco el por
que..
Un saludin...
Iago.


Respuesta Responder a este mensaje
#7 Iago
30/12/2004 - 07:12 | Informe spam
Pues muchisimas gracias por el interes...ya se un poco mas de excel!
Un saludo.
Iago.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida