make function to shift discrete signal
    2 views (last 30 days)
  
       Show older comments
    
hello I am currently studying DSP and using matlab . I build a function that shifting signals and the out put of this function is n and y for exmaple :
x=[ 2 3 0 -5 2 1 ]; n=-1:4;
and i want that y(n)=x(2-K)
and this is my code :
clc;
clear all;
x=[  2 3 0 -5 2 1  ];
n=-1:4;
m=2;
k=-1
shifting_by_m (x,m,n,k)
stem(n,x)
and the function is :
function [n,x] =shifting_by_k (x,m,n,k)
if (k<0)
        n=m+flip(-n) %%h(m-k)
        x=flip(x)
else (k>0)
          n=(-1)*(m-n)
          x=x
      end
end
the question is there a way to write in my main code '(2-k)' and that the function will get that m=2 and k<0 ?
3 Comments
  Adam
      
      
 on 27 Jun 2018
				Why are you trying to pass '2-k' into a function? Just calculate 2-k and pass the result of that into the function as the desired shift.
Answers (0)
See Also
Categories
				Find more on Signal Generation, Analysis, and Preprocessing in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
