How to refer to parameter from function in the loop.
1 回表示 (過去 30 日間)
古いコメントを表示
I've got such problem. Whole code is compiling at my teachers computer, whereas on mine it says that: Undefined function or method 'y' for input arguments of type 'double' [Just the part of the code to which it refers]:
for i=round(length(t)/2):length(t)-1
if y(i,1)<-20 && y(i+1,1)>-20
t20=[t20,t(i)];
end
y is used in my func.m file. And now is the question: how to refer to it in my loop? I got no idea why it works there and not on my Matlab.
2 件のコメント
Muhammad Usman Saleem
2015 年 6 月 2 日
After looking on your question i can batter guide you....please share complete question
Muhammad Usman Saleem
2015 年 6 月 2 日
to me this statement if y(i,1)<-20 && y(i+1,1)>-20 % is used as check means when (i,1)<-20 AND y(i+1,1)>-2 then do with t20???
採用された回答
Salaheddin Hosseinzadeh
2015 年 6 月 2 日
編集済み: Salaheddin Hosseinzadeh
2015 年 6 月 2 日
Dear Michael,
You used y in your myfunc.m function, so it is not recognized in another function if you don't return as an output.
function y = myfunction(a,b,c)
% so this is your y function
% somewhere at the end of your function you have to assign y
% for example
y = a + b;
end
So later in another code, when you're using myfunction you get y back
% this is not myfunction (it's yourFunction) lol
function yourFunction(e,f,g)
% somewhere in this function you're calling myfunction
y = myfunction(a,b,c)
for i=round(length(t)/2):length(t)-1
if y(i,1)<-20 && y(i+1,1)>-20
t20=[t20,t(i)];
end
As I understood this is your problem, if I'm wrong please explain more ;)
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Loops and Conditional Statements についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!