Hi, I am trying to input a signal which is a sine wave between 3 and 7 seconds and zero everywhere else. I am trying to create an 'for loop' to do this by indexing the time vector but I can't make it work, the graph just displays nothing (assuming matlab thinks x = 0 for all time?)...is there anything I've missed?
t = [0:0.1:10];
for k=1:length(t)
if t(k)>=3 && t(k)<=7
x = 5*sin(4*pi *t);
else
x = 0;
end
end
plot(t,x)
Any help would be greatly appreciated :)

 Akzeptierte Antwort

KSSV
KSSV am 25 Apr. 2017

1 Stimme

t = 0:0.1:10;
x = 5*sin(4*pi *t);
x(t<3) = 0 ;
x(t>7) = 0 ;
plot(t,x)

Weitere Antworten (0)

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 24 Apr. 2017

Beantwortet:

am 25 Apr. 2017

Community Treasure Hunt

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

Start Hunting!

Translated by