How to stop matlab from truncating long decimal numbers
28 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Is there a way for a long string of decimal numbers like 0.92834387282837738 to not be truncated by matlab?? I was using it for a code (arithmetic coding) that requires precision and matlab truncating the numbers ruins everything.
0 comentarios
Respuestas (1)
madhan ravi
el 7 de Jul. de 2019
The decimals are not truncated it’s just the appearance in command window:
doc format
doc sprintf
4 comentarios
Giuseppe Degan Di Dieco
el 26 de Nov. de 2021
Hello Guys,
thanks for setting up this thread, it really helped me.
Indeed, the command
sprintf
is very useful to create string that meets the user's needs.
Best.
Steven Lord
el 26 de Nov. de 2021
No, sprintf won't work if the number is truncated by being stored as a double precision number before it gets to sprintf.
sprintf('%0.100f', 0.0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789)
If as Walter Roberson suggested you'd converted this directly from text to a sym object:
s = sym('0.0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789');
vpa(s, 100)
Ver también
Categorías
Más información sobre Conversion Between Symbolic and Numeric en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!