MATLAB Answers

0

having trouble with number displays in matrix

Asked by Gregory Power on 24 Jun 2019
Latest activity Commented on by Gregory Power on 24 Jun 2019
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
Edited by Guillaume
on 24 Jun 2019
 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
Edited by 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

  0 Comments

Sign in to comment.


Answer by vidhathri bhat on 24 Jun 2019

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

  0 Comments

Sign in to comment.