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 :)

 採用された回答

KSSV
KSSV 2017 年 4 月 25 日

1 投票

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

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeLoops and Conditional Statements についてさらに検索

質問済み:

2017 年 4 月 24 日

回答済み:

2017 年 4 月 25 日

Community Treasure Hunt

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

Start Hunting!

Translated by