Matlab中循环计算!!!急着用!!!

来源:百度知道 编辑:UC知道 时间:2024/06/05 09:34:24
有这样一个多维矩阵:
0 0 25
10 0.3 28
20 0.5 25
30 0.8 25

要用下一行的数减去本行,得到的数构成一个新的矩阵,新矩阵第一行元素为0。(上面数据只是一部分,全部数据是三列,行数不等。)
请写的详细点,最好有注释,包括怎么定义一个列数一定行数不定的矩阵。
我刚开始学Matlab,菜鸟一个,拜托大侠啦~~~~

A=[0 0 25
10 0.3 28
20 0.5 25
30 0.8 25];
B=zeros(size(A));%生成同样大小的0矩阵
h=size(A,1);%A行数
for i=2:h
%B的第2到h行元素,分别是A的第2到h行减去A的第1到h-1行
B(i,:)=A(i,:)-A(i-1,:);
end
B

A = [0 0 25
10 0.3 28
20 0.5 25
30 0.8 25 ]; % 你原来的矩阵
len = size(A,1); % A的行数
B1 = A(2:len,:); % A的2~len行,所有列构成的新矩阵
B2 = A(1:len-1,:); % A的1~len-1行,所有列构成的新矩阵
B = B1-B2; % A下一行的数减去本行,得到的数构成的新矩阵
B = [[0 0 0];B]; % 在B的第一行插入[0 0 0]