Cuando agrego 0.1+0.2
obtengo 0.30000000000000004
pero cuando agrego el mismo número en ruby 1.8.7
obtengo la respuesta correcta 0.3
. Consigo 0.3
redondeando pero sólo quiero conseguir 0.3
en ruby 1.9.2
añadiendo 0.1
y 0.2
Error de adición con ruby-1.9.2
Respuesta
Necesita bigdecimal para que esto funcione.
(BigDecimal('0.1') + BigDecimal("0.2")).to_f
Consulte a continuación enlace:
'" ya que es el error de ruby "' - esto no es un error - es cómo funciona el punto flotante - el informe de error afirma que este error se marcó como rechazado. –
gracias Andrew ... – a5his
Su edad rubí mintió:
$ ruby -v
ruby 1.8.7 (2010-06-23 patchlevel 299) [x86_64-linux]
$ irb
irb(main):001:0> printf("%40.40f\n", 0.1 + 0.2)
0.3000000000000000444089209850062616169453
=> nil
Floating point numbers son animales muy difíciles.
Esa es una noción interesante: te mintió y te dio la respuesta correcta, no debería haberlo hecho. ¡Punto flotante es divertido! –
@ Andrew Marshall, gracias por la risa. :) – sarnold
Estaba usando ruby-1.8.7-head, no patchlevel. –
- 1. Error de adición numpy de Python
- 2. Adición de flotadores con javascript
- 3. Problemas con la adición de isótopos
- 4. Adición de elementos HTML con JavaScript
- 5. Error al presionar la aplicación a heroku (Instalar linecache19 (0.5.12) con error de extensiones nativas) ¡Se necesita ayuda!
- 6. Adición de matrices con diferente número de dimensiones
- 7. Instalación de Publify con la instalación del paquete, error en bluecloth gem
- 8. Adición de Tap Gesto de UIImage
- 9. Adición de atributos personalizados a clases de C# con Roslyn
- 10. juego de murciélagos. Adición de un temporizador con set/p
- 11. Adición/eliminación de elementos de datos JSON con jQuery
- 12. Adición para BigDecimal
- 13. Adición de cadena con el número en php
- 14. Problema con la adición de látex en el Apéndice
- 15. Problema con la red neuronal artificial sencilla - la adición de
- 16. Adición de clase aleatoriamente elegido etiqueta HTML con jQuery
- 17. TabItems Adición dinámica
- 18. Adición de clave externa en varias columnas
- 19. La adición de nuevas propiedades dinámicas
- 20. Adición de un vector de par
- 21. Adición de gráficos para WordprocessingML
- 22. Adición de metadatos a jsTree
- 23. Adición de barras de error en un gráfico de barras en gnuplot
- 24. la adición de dos Ajuste [Cualquier]
- 25. Adición wxpython en pygame
- 26. error en el empuje Heroku, JSON y Ruby 1.9.2
- 27. Adición de objetos a un NSMutableArray propiedad
- 28. Adición de etiquetas Como subvista a UIView
- 29. Problemas simples de adición de JavaScript
- 30. exponenciación mínima de la cadena de adición
posible duplicado de [rubí: la conversión de flotador para número entero en rubí produce resultados extraños] (http://stackoverflow.com/questions/5255629/ruby -converting-from-float-to-integer-in-ruby-produces-strange-results) –