Array \ Matrix Output display formating

7 Ansichten (letzte 30 Tage)
Roberto Enrique Pinto Villegas
For the next code
syms phi
M=exp(pi*tand(phi))*(tand(45+phi/2))^2;
phi=10:0.5:12;
for i=1:size(phi,2)
N(i)=vpa(subs(M,phi(i)));
end
the output is
[ 10, 2.4714356250900329077526825288117]
[ 21/2, 2.5879028921290203959454380144457]
[ 11, 2.7101851281117024394027253294966]
[ 23/2, 2.8386049798657898988231385226601]
[ 12, 2.973505374766345410079490037392]
how i could change the format to look like?
[ 10, 2.471]
[10.5, 2.587]
...
[ 12, 2.973]
i try
format shortG
but i think calling vpa function don't recive the format style defined before.
Thank you.
  2 Kommentare
Félix Fernando González Navarro
Just for fun....
clc;
syms phi
M=exp(pi*tand(phi))*(tand(45+phi/2))^2;
phi=10:0.5:12;
for i=1:size(phi,2)
N(i)=subs(M,phi(i));
if mod(phi(i),1)==0
value=sprintf('%4d',phi(i));
else
value=sprintf('%4.1f',phi(i));
end
fprintf('%s,%6.3f\n',value,subs(M,phi(i)));
end
Roberto Enrique Pinto Villegas
Gracias Félix!

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

David Hill
David Hill am 19 Jun. 2020
You could also round(x, 3) and use format shortG
format shortG;
syms phi
M=exp(pi*tand(phi))*(tand(45+phi/2))^2;
phi=10:0.5:12;
for i=1:size(phi,2)
N(i)=double(vpa(subs(M,phi(i))));
end

Weitere Antworten (0)

Produkte


Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by