MATLAB Answers

0

having trouble with number displays in matrix

Asked by Gregory Power on 24 Jun 2019 at 11:37
Latest activity Commented on by Gregory Power on 24 Jun 2019 at 11:54
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

  0 Comments

Sign in to comment.

Products


Release

R2018a

3 Answers

Answer by Guillaume
on 24 Jun 2019 at 11:42
Edited by Guillaume
on 24 Jun 2019 at 11:43
 Accepted Answer

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

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.


Answer by Himanshu Rai on 24 Jun 2019 at 11:41
Edited by Himanshu Rai on 24 Jun 2019 at 11:44

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

  0 Comments

Sign in to comment.


Answer by vidhathri bhat on 24 Jun 2019 at 11:48

Hi
Try using
format long g
This will suppress scientific notation.

  0 Comments

Sign in to comment.