Matrix interference infinity loop
Ältere Kommentare anzeigen
When you put a value to the counter, for example more than 15 and at a number of attempts 10000. the matrix interference in Loop indefinitely What is the reason for this and how can I fix the problem
code
m=15;
klp=0;
for i=1:m
klp=klp+1;
lp(klp)=top;
end
lp(klp)=top interference to infinity loop
1 Kommentar
Azzi Abdelmalek
am 22 Dez. 2012
What are lp and top?
Antworten (1)
Walter Roberson
am 22 Dez. 2012
0 Stimmen
Are you sure it is an infinite loop, and not just very slow? You are not preallocating your output array, so every time you add more information to the array, MATLAB has to allocate a new block of memory just slightly larger, and copy the old array, then delete the old array -- for every iteration.
7 Kommentare
mohammed sportman
am 23 Dez. 2012
mohammed sportman
am 23 Dez. 2012
Walter Roberson
am 23 Dez. 2012
You are getting an out of memory error, and then the display starts repeating the same thing over and over again?
You mention something about "number of attempts 10000". I do not see where that is in the code?
mohammed sportman
am 24 Dez. 2012
Walter Roberson
am 24 Dez. 2012
Does your code have a try/catch in it? If so then it might be catching the out-of-memory error instead of exiting.
Have you revised your code to pre-allocate the memory yet?
mohammed sportman
am 24 Dez. 2012
mohammed sportman
am 24 Dez. 2012
Kategorien
Mehr zu Loops and Conditional Statements finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!