Exact number of digits output in num2str
107 次查看(过去 30 天)
显示 更早的评论
I am building input files for Nastran and it requires exact spacing in the strings for the numbers (in string format). I am doing a lot of runs so I don't want to change my Matlab code all the time. I need to output some values with exactly 4 characters (so 1 becomes 1.00, pi becomes 3.14, 0.5 becomes 0.50, etc), but I haven't been able to figure it out yet. Using the minimum number of characters in num2str with '%2f' and rounding beforehand using round(100*n)/100 yields for pi 3.140000, probably due to roundoff error. Any help?
0 个评论
采纳的回答
Bjorn Gustavsson
2015-6-23
Well you get part of the way with %4.2f, as in
num2str(pi,'%4.2f')
that breaks down for large numbers alike pi*1e12, but then I don't know how you're supposed to squeeze that into exactly 4 chars...
HTH
0 个评论
更多回答(1 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 File Operations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!