matlab问题,怎样把for循环得到的一组数据存到一个数组里

2024-11-18 16:20:46
推荐回答(2个)
回答(1):

%%模型3
H=5;%屏幕上边缘离地面的高度
h=1.8;%屏幕的高度
D=19;%最后一排离屏幕水平距离
d=4.5;%第一排离屏幕水平距离
c=1.1;%观众的平均坐高
l=0.8;%两排座位间的距离
pi=3.1415926;
fd=pi/180;%幅度换算
for q=0:0.01:20
    fprintf('when q=%f',q);
    n=floor(14.5/(l*cos(q*fd)))+1;
     C=H-(tan(q*fd)*14.5+1.1);%每排观众距屏幕上沿的距离
end%%由计算可知排数19<=n<=20 q<=15.05
%%根据利益最大化,n=20
q=0:0.01:15.01;
for j=1:length(q)
    %fprintf('线倾角q=%f\n',q);
    for i=1:1:20
        x=4.5+14.5*(i-1)/n;
        A(i,j)=(atan(1.8*x/(x^2+(5-x*tan(q(j)*fd)-4.5*tan(q(j)*fd)+1.1)*(3.2-x*tan(q(j)*fd)-4.5*tan(q(j)*fd)+1.1))))/fd;
        B(i,j)=(atan((5-x*tan(q(j)*fd)-4.5*tan(q(j)*fd)+1.1)/x))/fd;
    end
   纳薯渗 RA=A/20;
    RB=B/20;
end


最后得洞脊到的A和B都是 20x1502的矩阵

第一行表示 i=1

第二行表示 i=2

。。。。

第二十行表示 i=20


第一列表示 p=0

第二列表示 p=0.01

第三列表示 p=0.02

。。。

第一千五百手链零二列 p=15.01

回答(2):

把A[]改为A(i)就行了