Preguntas etiquetadas con floating-point

Los números de coma flotante son aproximaciones de números reales que pueden representar rangos más grandes que los enteros, pero usan la misma cantidad de memoria, a costa de una precisión menor. Si su pregunta es sobre pequeños errores aritméticos (p. Ej., ¿Por qué 0.2 + 0.1 es igual a 0.300000001?) O errores de conversión decimal, lea la página de "información" vinculada a continuación antes de publicar.

1
Comportamiento extraño de (^) en Haskell
¿Por qué GHCi da una respuesta incorrecta a continuación? GHCi λ> ((-20.24373193905347)^12)^2 - ((-20.24373193905347)^24) 4.503599627370496e15 Python3 >>> ((-20.24373193905347)**12)**2 - ((-20.24373193905347)**24) 0.0 ACTUALIZACIÓN Implementaría la función de Haskell (^) de la siguiente manera. powerXY :: Double -> Int -> Double powerXY x 0 = 1 powerXY x y | y < …

5
Suma estable eficiente de números ordenados
Tengo una lista bastante larga de números positivos de coma flotante ( std::vector<float>, tamaño ~ 1000). Los números se ordenan en orden decreciente. Si los sumo siguiendo el orden: for (auto v : vec) { sum += v; } Supongo que puedo tener algún problema de estabilidad numérica, ya que …

2
Sintaxis válida de llamar al pseudodestructor para una constante flotante
Considere el siguiente programa demostrativo. #include <iostream> int main() { typedef float T; 0.f.T::~T(); } Este programa está compilado por Microsoft Visual Studio Community 2019. Pero clangy gccemitir un error como este prog.cc:7:5: error: unable to find numeric literal operator 'operator""f.T' 7 | 0.f.T::~T(); | ^~~~~ Si escribir la expresión …

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.