Accepted Answer

use stem() instead of plot() and you'll get it as shown in your image.
n=-10:10; % E.g. use any space
N1 = 2; % E.g. set up at any value
x = zeros(size(n));
for jj=1:numel(n)
if abs(n(jj))<=N1
x(jj)=1;
else
x(jj)=0;
end
end
stem(n, x)
title('\delta function'), shg

2 Comments

thank you sir.
Hi Hadimargo,
You are most welcome. It is a pleasure. Good luck.

Sign in to comment.

More Answers (2)

Hi,
here is one of the possible solutions:
n=-10:10; % E.g. use any space
N1 = 2; % E.g. set up at any value
x = zeros(size(n));
for jj=1:numel(n)
if abs(n(jj))<=N1
x(jj)=1;
else
x(jj)=0;
end
end
plot(n, x, 'k-', 'linewidth', 2), grid on
title('\delta function'), shg
Good luck.

1 Comment

tnx for answering . but the shape is not correct:
correct shape is :

Sign in to comment.

take this solution
n = -5:1:5;
s = zeros(size(n));
for i = 1:length(n)
if n(i)< -2
s(i) = 0;
elseif -2<=n(i)& n(i)<=2
s(i) = 1;
else
s(i) = 0;
end
end
stem(n,s,'black','Linewidth',1.5), grid on

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!