matlab code running problem

1 次查看(过去 30 天)
aniruddh mali
aniruddh mali 2012-9-24
I am trying to run following code on matlab 7.7.0 but it consumes too much time and No output !
for i=1:length(data);
j=1:length(data);
if y1(i)>1.2
f(j)=y1(i);
end
end
it also can not be run on matlab 6 though the developer said that it works on matlab 6.
  2 个评论
Daniel Shub
Daniel Shub 2012-9-24
Please format your code. Are you sure your code is correct? Are you missing a for loop (over j). Can you tell use about data, y1 and f? What do you expect to see and what do you see. How long is "too much time"
Jan
Jan 2012-9-24
Why do you claim that this piece of code does not run under Matlab 6?

请先登录,再进行评论。

回答(2 个)

Jan
Jan 2012-9-24
编辑:Jan 2012-9-24
It is not clear what your code should do. Creating "1:length(data)" in each iteration is a waste of time. In addition you overwrite the elements of f most likely.
Did you forget a "for" before "j=..."?
What do you want to achieve?

Javier
Javier 2012-9-24
Hello Mali
What is the purpose of this code ??? Does the variable j change size in each iteration ? If not, do not define it. I believe that you define "j" to establish the size of f. Something that could work better:
j=size(data,1) % for column vector
If want to find the elements in y1 that are greater than 1.2
[r,c,i]=find(y1>1.2); Now you have the row, column and index value that match the search
Now you have the data, What you want to do with them ???
Hope it helps

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by