porque es mas preciso double que float

andres porras garcia
20 de Marzo del 2011
hola necesito saber explicar mediante un programita la diferencia entre float y double por que en sus graficas unos estan cerca y los float estan mas alejados es decir la precision de cada uno

Douglas Alizares Camacho
20 de Marzo del 2011
veras, los tipos de dato como float tienen un rango de precicion y un espacio de memoria que se reserva al momento de declarar una varialbe:
precicion:
float 3.4E-38 a 3.4E38
double 1.7E-308 a 1.7E308

Memoria que se reserva en el sistema:
float 32 bits
double 64 bits

como abrás notado, no puedes asignar una varialbe de tipo double a otra variable de tipo float, ya que esta fuera del rango de precición, el compilador no te ará notar ningún tipo de error si es que estas fuera del área de precición.
ejemplo:
float a=3.4*pow(10,38)
double b=1.7*pow(10,308)
a=b; esto no es valido ya que está fuera del área de precicion, la respuesta del compilador será [n]desconocido o inf[/n], pero si cambias el valor que le asignas a b por 3.4*pow(10,38) esto si es valido, pero la verdad es k no te aconsejo aser eso, si vas a utilizar numeros que requieran mucha precicion mejor utiliza un double o un long double
b=a; ésto si es valido, ya que siempre estará en el rango de precición