debugging a program

6 views (last 30 days)
som
som on 6 Apr 2012
Edited: per isakson on 30 Sep 2014
Hi all; I've written a program including two loops and I want to debug it using "keyboard " command.
for n=1:1000
for qq=1:100
tsd (n,qq)= rand(1);
keyboard
end
end
I want to see the "tsd " values just in "n=10 " and "qq=50, 70; 89" . How can I do this using "keyboard" and "return" commands. I look forward to see your reply,

Accepted Answer

per isakson
per isakson on 6 Apr 2012
Edited: per isakson on 2 Mar 2014
Why do you want to use KEYBOARD? That's not the best way - in my opinion. Thus, I would:
  1. Put the code in a function.
  2. Use conditional breakpoints
However, try to replace the line "keyboard" by
if n==10 && ( qq==50 || qq==70 || qq==89 )
keyboard
end

More Answers (2)

per isakson
per isakson on 1 Mar 2014
Here are some links on debugging in Matlab

Alex
Alex on 30 Sep 2014
Edited: per isakson on 30 Sep 2014
How do i fix this?
for i = 1:x_max
for i = 1:y_max
if(forests(i,j) == 1) %Plot Green grass
rectangle ('position',[i-0.5,j-0.5,MapRes,MapRez],'FaceColor',ForColor)
hold on
end
getting this error
if(forests(i,j) == 1) %Plot Green grass
  1 Comment
Alex
Alex on 30 Sep 2014
sorry this is the error: Subscript indices must either be real positive integers or logicals.

Sign in to comment.

Categories

Find more on Desktop in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!