How to write a function with a for loop

2 ビュー (過去 30 日間)
TRISHITA BANERJEE
TRISHITA BANERJEE 2018 年 7 月 4 日
コメント済み: TRISHITA BANERJEE 2018 年 7 月 23 日
if t(i)=L1*(i-1)+ L[(i-1)/e]*t_k
i get
t1=0;
t2=L1;
t3=2*L1+t_k;
t4=3*L1+t_k;
where e=2 and i want to have a floor function for L[ (i-1)/e].How to create a function for the following with input e,imax,L1 and t_k like function delay(e,imax,L1,t_k) with a for loop
  2 件のコメント
TRISHITA BANERJEE
TRISHITA BANERJEE 2018 年 7 月 4 日
編集済み: Walter Roberson 2018 年 7 月 4 日
Can any one verify if its correct
function t = delay (e, imax, L1 , t_k)
t = cell(imax,imax);
for i=1:imax
t(i) = L1 * (i-1) + round((i-1) / e)* t_k;
end
Walter Roberson
Walter Roberson 2018 年 7 月 4 日
You mentioned floor() earlier, but here you use round() instead?

サインインしてコメントする。

採用された回答

Guillaume
Guillaume 2018 年 7 月 4 日
What's stopping you from trying? You'll quickly find out that it errors.
t = zeros(imax);
or probably better
t = zeros(1, imax);
would get rid of the error. Whether or not it's what you want, I don't know.
Note that the same can be achieved without a loop:
im = 0:imax - 1;
t = L1 * im + round(im /e) * t_k;
  1 件のコメント
TRISHITA BANERJEE
TRISHITA BANERJEE 2018 年 7 月 23 日
Thanks a lot

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by