📄 alinha_sequencia.m
字号:
%Fun玢o Alinha sequ阯cia
%Este programa alinha duas sequ阯cias de tamanhos diferentes para o efeito
%de c醠culos matem醫icos
%Par鈓etros de entrada
%x=valor da primeira sequ阯cia
%N1=valor da posi玢o de n inicial da sequ阯cia x (entre -infinito e zero)
%N2=valor da posi玢o final de n da sequ阯cia x (entre zero e infinito)
%y=valor da segunda sequ阯cia
%N3=valor da posi玢o de n inicial da sequ阯cia y (entre -infinito e zero)
%N4=valor da posi玢o final de n da sequ阯cia y (entre zero e infinito)
x=input('Digite a primeira sequ阯cia (dentro de colchetes): ');% a fun玢o input aceita qualquer valor na entrada, seja ele de qualquer tipo.
N1=input('Digite a posi玢o inicial do primeiro termo de n da sequ阯cia de x (entre -infinito e zero): ');
N2=input('Digite a posi玢o final do 鷏timo termo de n da sequ阯cia de x(entre zero e infinito):');
Nx1=(N2-N1)+1;
Nx2=length(x);
while (Nx1~=Nx2) | (N1>0 | N2<0) %verifica se os limites s鉶 iguais ao tamanho da sequ阯cia
disp('erro na especifica玢o dos par鈓etros');
N1=input('Digite a posi玢o inicial do primeiro termo de n da sequ阯cia de x (entre -infinito e zero): ');
N2=input('Digite a posi玢o final do 鷏timo termo de n da sequ阯cia de x(entre zero e infinito): ');
Nx1=(N2-N1)+1;
end;
y=input('Digite a segunda sequ阯cia (dentro de colchetes): ');% a fun玢o input aceita qualquer valor na entrada, seja ele de qualquer tipo.
N3=input('Digite a posi玢o inicial do primeiro termo de n da sequ阯cia de y (entre -infinito e zero): ');
N4=input('Digite a posi玢o final do 鷏timo termo de n da sequ阯cia de y (entre zero e infinito): ');
Nx3=(N4-N3)+1;
Nx4=length(y);
while (Nx3~=Nx4) | (N3>0 | N4<0)%verifica se os limites s鉶 iguais ao tamanho da sequ阯cia
disp('erro na especifica玢o dos par鈓etros');
N3=input('Digite a posi玢o inicial do primeiro termo de n da sequ阯cia de y (entre -infinito e zero): ');
N4=input('Digite a posi玢o final do 鷏timo termo de n da sequ阯cia de y (entre zero e infinito): ');
Nx3=(N4-N3)+1;
end;
if N1~=N3 & N1<N3 k=N1:1:N3;
comp1=length(k)-1;
y=[zeros(1,comp1) y];
elseif N1~=N3 & N1>N3 k=N3:1:N1; %vetor diferen鏰 entre N1 e N2
comp2=length(k)-1;
x=[zeros(1,comp2) x];
end;
if N2~=N4 & N2<N4 l=N2:1:N4;%Vetor diferen鏰 entre N2 e N4
comp3=length(l)-1;
x=[x zeros(1,comp3)];
elseif N2~=N4 & N2>N4 l=N4:1:N2;
comp4=length(l)-1;
y=[y zeros(1,comp4)];
end;
if N1<=N3 Ns1=N1;
elseif N1>N3 Ns1=N3;
end;
if N2>=N4 Ns2=N2;
elseif N2<N4 Ns2=N4;
end;
% Nc1=2*Ns1;
% Nc2=2*Ns2;
%
% comp_n=Ns1:1:Ns2;%indica a faixa de valores de n
% comp1_n=Nc1:1:Nc2;%indica a faixa de valores de n
% w=conv(x,y);%convolu玢o de x e y
% v=conv(x,fliplr(y));%correla玢o entre x e y
% disp('O valor da sequ阯cia x[n]
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -