Freecodecamp: Problema de problema de cambio exacto

Creado en 4 ago. 2016  ·  5Comentarios  ·  Fuente: freeCodeCamp/freeCodeCamp

Nombre del desafío

https://www.freecodecamp.com/challenges/exact-change

descripcion del problema

Tuve un problema con este problema debido a cálculos inexactos mientras trabajaba con el valor "0.01". A veces, el valor de retorno del cálculo tenía un valor incorrecto después de 7 u 8 lugares decimales (por ejemplo, 1.01 - 0.01 = 0.999999996).
¿Alguien más tuvo un problema similar?
Logré solucionarlo pero aún me tomó mucho tiempo hacerlo debido a este problema que no debería suceder ... Cualquiera tiene alguna idea de por qué es así. Mi opinión es que se debe a la forma en que js guarda valores enteros y flotantes ...

Información del navegador

  • Nombre del navegador, versión: Google Chrome, 52.0.2743.82 (64 bits)
  • Sistema operativo: Linux Ubuntu 16.04
  • Móvil, escritorio o tableta: portátil

Tu codigo


Captura de pantalla

help wanted

Comentario más útil

Hola, @FatKoala. Puede leer todo sobre la aritmética de punto flotante (y buenas formas de manejarla) aquí y en otros lugares en línea.

Y un dato curioso: JavaScript no hace una distinción de tipo entre flotantes y enteros. 1 y 1.00000 son el mismo número en JS (aunque esta no es estrictamente la causa de los errores de precisión de punto flotante que experimentó).

Podría valer la pena incluir un recurso sobre aritmética de punto flotante (aunque no necesariamente el que vinculé anteriormente) en los enlaces útiles de este desafío, ya que probablemente sea el primero que requiere que los usuarios comprendan los problemas de precisión que plantea.

cc @ FreeCodeCamp / issue-moderators para obtener comentarios sobre cómo agregar dicho enlace (y qué enlace agregar)

Todos 5 comentarios

Hola, @FatKoala. Puede leer todo sobre la aritmética de punto flotante (y buenas formas de manejarla) aquí y en otros lugares en línea.

Y un dato curioso: JavaScript no hace una distinción de tipo entre flotantes y enteros. 1 y 1.00000 son el mismo número en JS (aunque esta no es estrictamente la causa de los errores de precisión de punto flotante que experimentó).

Podría valer la pena incluir un recurso sobre aritmética de punto flotante (aunque no necesariamente el que vinculé anteriormente) en los enlaces útiles de este desafío, ya que probablemente sea el primero que requiere que los usuarios comprendan los problemas de precisión que plantea.

cc @ FreeCodeCamp / issue-moderators para obtener comentarios sobre cómo agregar dicho enlace (y qué enlace agregar)

Sí, este es un tema muy interesante y debería abordarse en mi humilde opinión.

En JavaScript, solo hay un tipo de datos numérico que es number y generalmente es un punto flotante de 64 bits (considerando cómo los navegadores (motores JS para ser precisos) los están implementando).

Vamos a etiquetar esto como Se busca ayuda para alguien de la comunidad para vincular un buen recurso. Intentaré mirar hacia arriba también, pero sí, es mejor si proviene de alguien que tal vez sea un experto en idiomas.

Gracias por el enlace, fue útil ... me frustré mucho por el problema mientras estaba codificando ... ahora tiene sentido ... Estoy de acuerdo en que debería estar vinculado en algún lugar o explicarse antes que esas cosas suceden ...

Hurgué un poco y el enlace de

@dhcodes, por favor, adelante: guiño:

¿Fue útil esta página
0 / 5 - 0 calificaciones