work with numbers in number
2 次查看(过去 30 天)
显示 更早的评论
Hello! I have the number 40.201109, I need to work with numbers 109, and then with 110 and at the end of 40. Help me how to separate them
6 个评论
Walter Roberson
2019-11-19
You do not understand how you get that number.
If you have a number of the form AB.cdefgh then how should the output be formed?
采纳的回答
Walter Roberson
2019-11-19
x = 40.201109;
xs = sprintf('%.6f', x);
a = str2double(xs(1:2));
b = str2double(xs(end-3:end-1));
c = str2double(xs(end-2:end));
This presumes there are exactly 6 significant decimal places. It is not generally possible to figure out how many significant decimal places a binary floating point number has -- for example 40.201109 is stored internally as 40.201109000000002424712874926626682281494140625 exactly.
0 个评论
更多回答(0 个)
另请参阅
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!