求助:MATLAB一个小问题!

2025-03-11 06:32:13
推荐回答(1个)
回答1:

假设a,b是一行N列的向量:
clc
a=input('请输入向量a');
b=input('请输入向量b');
[x1 y1]=size(a);
[x2 y2]=size(b);
n=y1+y2;
c=zeros(1,n);
for i=1:1:n
if y1<=y2 & i/2<=y1
if mod(i,2)==1
c(i)=a((i+1)/2);
else
c(i)=b(i/2);
end
end
if y1<=y2 & i/2>y1
c(i)=b(i-y1);
end
if y1>y2 & i/2<=y2
if mod(i,2)==1
c(i)=a((i+1)/2);
else
c(i)=b(i/2);
end
end
if y1>y2 & i/2>y2
c(i)=a(i-y2);
end
end
c

如输入:
[1 2 3 4]
[-1 -2]
结果是:
[1 -1 2 -2 3 4]