12/04/2010, 12:07
|
| | Fecha de Ingreso: julio-2008
Mensajes: 85
Antigüedad: 16 años, 4 meses Puntos: 2 | |
Respuesta: Error en Calculo PHP Del manual de php: http://www.php.net/manual/es/language.types.float.php Cita: Warning
Precisión del punto flotante
Es bastante común que algunas fracciones decimales simples como 0.1 o 0.7 no puedan ser convertidas a su representación binaria interna sin perder un poco de precisión. Esto puede llevar a resultados confusos: por ejemplo, floor((0.1+0.7)*10) usualmente devolverá 7 en lugar del esperado 8 ya que el resultado de la representación interna es en realidad algo como 7.9.
Esto se debe a que es imposible expresar de forma exacta algunas fracciones en notación decimal con un número finito de dígitos. Por ejemplo, 1/3 en forma decimal se convierte en 0.3.
Así que nunca confíe en resultados de números flotantes hasta el último dígito, y nunca compare números de punto flotante para conocer si son equivalentes. Si realmente necesita una mejor precisión, las funciones matemáticas de precisión arbitraria y las funciones gmp están disponibles. |