having trouble with number displays in matrix

2 views (last 30 days)
I am having a problem with the way numbers are being displayed in a matrix from a while loop. I am trying to calculate basic interest increases in a bank account for a number of years and at the 4th year the values change to some sort of scientific notation. I have tried set the format to compact as this is what I understand to be the default format for matlab to be. I have attached my code and here is a snip of my output. What can I do to fix this?
2 1210
3 1331
1.0e+03 *
0.0040 1.4641
1.0e+03 *
0.0050 1.6105
a=1000;
r=0.1;
bal=a;
year=0;
disp('Year Balance')
while bal<a*2
bal=bal+r*bal;
year=year +1;
disp([year bal])
end

Accepted Answer

Guillaume
Guillaume on 24 Jun 2019
Edited: Guillaume on 24 Jun 2019
format compact only affects the line spacing of the display. It doesn't affect how numbers are displayed.
I tend to use format longg or format shortg. Both should get rid of the scientific notation.
  1 Comment
Gregory Power
Gregory Power on 24 Jun 2019
Thank you. I guess I was a mistaken. and thank you for directing me to the documentation and answering the question.

Sign in to comment.

More Answers (2)

Himanshu Rai
Himanshu Rai on 24 Jun 2019
Edited: Himanshu Rai on 24 Jun 2019
Since you are having trouble displaying year as integers, you can try this
a=1000;
r=0.1;
bal=a;
year=0;
disp('Year Balance')
while bal<a*2
bal=bal+r*bal;
year=year +1;
disp([int32(year) bal])
end

vidhathri bhat
vidhathri bhat on 24 Jun 2019
Hi
Try using
format long g
This will suppress scientific notation.

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Products


Release

R2018a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!