Plotting discontinuous discrete signal with shift and fold
11 views (last 30 days)
Show older comments
Hello !
I have a given question below
x[n]= {1+n/3 -3<=n<=-1,
1 0<=n<=3,
0 other wise}
I have to plot this signal and I have developed the following code for that
clc
n=-10:1:10;
for i=1:length(n)
if n(i)>=-3 && n(i)<=-1
x(i)=1+(n(i)/3);
elseif n(i)>=1 && n(i)<=3
x(i)=1;
else
x(i)=0;
end
stem(x)
end
axis([-20 20 0 2])
but the resulting waveform is plotted for positive values of n, Kindly help me to plot the above sequence,
0 Comments
Answers (4)
Gnaneswar Nadh satapathi
on 6 Nov 2013
clc clear all close all n=-10:1:10; for i=1:length(n) if n(i)>=-3 && n(i)<=-1 x(i)=1+(n(i)/3); elseif n(i)>=1 && n(i)<=3 x(i)=1; else x(i)=0; end
end stem(n,x)
1 Comment
Sk Group
on 8 Feb 2021
MATLAB CODE:
function [n1,x1] = sigshift(x,n,k)
n = 1:10;
k = 2;
x = exp(n);
if k>0
disp(‘Positive’);
n1 = n(1):n(end)+k;
x1 = [zeros(1,k) x];
else
disp(‘Negative’);
n1 = n(1)+k:n(end);
x1 = [x zeros(1,abs(k))]; % abs is for absolute value of (k) because quantity can never be (-ve) negative %
end
MATLAB CODE:
function [y n1] = sigfold(x,n)
n1 = -fliplr(n)
y = fliplr(x)
end
See Also
Categories
Find more on Get Started with MATLAB in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!