Why i get the out of bound error in this code?
3 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
IBM watson
el 21 de Oct. de 2018
Comentada: IBM watson
el 21 de Oct. de 2018
myset=[1 2 3 4 6]; capacity=6; passedall=[] passed=[] for q = 1:5
q=q+1
capacity=6;
passedall = [passedall passed];
myset= setdiff(myset,passedall); for b= 1:5
if (myset(b) < capacity); capacity= capacity - myset(b)
passed(b) = myset(b)
end
end
endi get this error:
error: myset(4): out of bound 3
error: called from
deneme at line 13 column 5
2 comentarios
madhan ravi
el 21 de Oct. de 2018
passedall = [passedall passed]
doesn't have any values ?
Respuesta aceptada
Guillaume
el 21 de Oct. de 2018
Why i get the out of bound error in this code
Because by the time b equals 4, you've removed enough elements from myset that there are only 3 left and myset(b) is no longer valid. Have you tried debugging your program?
I have no idea what you're trying to do with your code since it's not commented at all. As it is, it doesn't make any sense and probably your loops are not needed. Without an explanation of what you're trying to achieve we can't tell you how to fix it.
Note that
for q = 1:5
q=q+1
has exactly the same effect as
for q=2:6
Más respuestas (0)
Ver también
Categorías
Más información sobre Argument Definitions en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!