Info

Diese Frage ist geschlossen. Öffnen Sie sie erneut, um sie zu bearbeiten oder zu beantworten.

Which could be the smartest way to do what this function does

1 Ansicht (letzte 30 Tage)
Salvatore Mazzarino
Salvatore Mazzarino am 12 Nov. 2013
Geschlossen: MATLAB Answer Bot am 20 Aug. 2021
I should have to graph step discret signal. This is the function.
function y = step(a,b,n0,flag)
n = a:b;
y = zeros(1,length(n));
if flag == 0
y(find(n==n0):length(n)) = 1;
else
y(1:find(n==n0)) = 1;
end
stem(n,y), grid on;
xlabel('n');
ylabel('u[n]');
return
Do you think it exists a smarter way to create what I have done wihtout using the if clause?

Antworten (1)

Roger Stafford
Roger Stafford am 12 Nov. 2013
n = a:b;
y = double(((n>=n0)&(flag==0))|((n<=n0)&(flag~=0)));
  2 Kommentare
Salvatore Mazzarino
Salvatore Mazzarino am 12 Nov. 2013
Do you think it exist a way without using the flag?
Roger Stafford
Roger Stafford am 12 Nov. 2013
As you have the 'step' function defined, the 'flag' input is essential for determining whether it is the beginning portion of a:b or its end portion that is set to 1's. How could you do that "without using the flag"?

Diese Frage ist geschlossen.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by