Practico 1 Ej 3

Practico 1 Ej 3

de Alvaro Ahunchain Crusich -
Número de respuestas: 1

Buenas, tengo una consulta sobre las salidas de la funcion 3 de este ejercicio. 

La última salida me devuelve 0, pero la penúltima y muchas de las anteriores me devuelve un número menor que el realmin, como por ejemplo 4.9407e-324

Me podrían explicar que es lo que está sucediendo?

Muchas gracias.

En respuesta a Alvaro Ahunchain Crusich

Re: Practico 1 Ej 3

de Ignacio Bustamante -
Buenas!

Esto se debe a que, una vez pasado realmin, lo que nos da son números subnormales. Tiene que ver con el coeficiente líder en la representación de punto flotante, y cómo la computadora interpreta esto.
El número realmin es el menor número normal que puede representar la precisión doble, que tiene como exponente mínimo e=-1022. Pasado este, tenemos vía libre para elegir que hacer con todos los números que tienen exponente e=-1023 y mantisa no cero (mantisa 0 son las dos representaciones del cero). Acá es donde aparecen los números subnormales, que es lo que te está pasando a vos.

Para ver el mínimo numero representable por la computadora en precisión doble pero incluyendo el rango subnormal, hay que multiplicar el épsilon de máquina por realmin.
En otras palabras, la precisión en Octave está llegando a

eps*realmin = 4.9407e-324,

que es lo que te está dando a vos.
Probá hacer la cuenta de eps*realmin y fijate cuánto te da para ver si te convence.
Saludos!