clear all
ig=[5.56294 2.76294 1.64294 1.00294 0.79294];
for i=1:5
n=600:1:4000;
t=-19.313+295.27*(n/1000)-165.44*(n/1000).^2+40.874*(n/1000).^3-3.8445*(n/1000).^4;
ft=t*ig(i)*5.83*0.85/0.367;
ua=0.377*0.367*n/ig(i)/5.83;
ff=3880*9.8*0.013+2.77/21.15*ua.*ua;
mh=3880+5.4/0.367/0.367+0.218*5.83*5.83*ig(i)^2*0.85/0.367/0.367;
a=(ft-ff)/mh;
m=1./a;
str=['r','m','b','c','r'];
plot(ua,m,str(i));
axis([0 98 0 20]);
grid on;
hold on
endh=legend('show');
圖像不正常的原因不在程序本身,而是妳第5個值計算的結果與前四個的差別太大,這是數學上的問題,不是程序的問題。上面的代碼更改了坐標範圍,只顯示了部分第5個值計算的結果,看起來還可以蒙人,湊活用吧。