how to remove exponential value from a number
3 次查看(过去 30 天)
显示 更早的评论
If a=4.5236e+15 ,then I want to print the result as b = 4.5236 alone by eliminating the exponential value.How can I do this.Please anyone help me .
采纳的回答
Image Analyst
2018-8-26
Try this:
a = 4.5236e+15
b = a / 10^floor(log10(a))
fprintf('b = %g\n', b)
3 个评论
Ajin R.
2022-8-23
编辑:Ajin R.
2022-8-23
It works well ! Thanks to Image Analyst. But for negative numbers, it gives complex number as output.
For eg:-
a = -4.5236e+15
b = a / 10^floor(log10(abs(a)))
fprintf('b = %g\n', b)
Output:
b =
3.0227 + 3.3655i
b = 3.02274
a = -4.5236e+15
b = a / 10^floor(log10(abs(a)))
fprintf('b = %g\n', b)
Output:
b =
-4.5237
b = -4.5237
Image Analyst
2022-8-23
@Ajin R. Not sure what you meant, but the output is not what you said it was. Look:
% First code snippet:
a = -4.5236e+15;
b = a / 10^floor(log10(abs(a)))
fprintf('b = %g\n', b)
% Second code snippet:
a = -4.5236e+15;
b = a / 10^floor(log10(abs(a)))
fprintf('b = %g\n', b)
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!