MATLAB: Hi i am newbie in matlab and i have to make a little game for the university but i have found some difficulties!

gameMATLABMATLAB Compilernewbie in matlab

The game is about a fox that must always catch a duck!(The duck is moving by the user)I made a code but something goes wrong.Sometimes never ends and i wonder why.Plus some 'if' even when the proposal is True doesnt work!Here is my code and i would be realy happy if you can help me!
rectangle('Curvature',[0 0], 'Position', [0 0 1 1]);
rectangle('Curvature',[0 0], 'Position', [1 0 1 1]);
rectangle('Curvature',[0 0], 'Position', [2 0 1 1]);
rectangle('Curvature',[0 0], 'Position', [3 0 1 1]);
rectangle('Curvature',[0 0], 'Position', [4 0 1 1]);
rectangle('Curvature',[0 0], 'Position', [0 1 1 1]);
rectangle('Curvature',[0 0], 'Position', [1 1 1 1]);
rectangle('Curvature',[0 0], 'Position', [2 1 1 1]);
rectangle('Curvature',[0 0], 'Position', [3 1 1 1]);
rectangle('Curvature',[0 0], 'Position', [4 1 1 1]);
rectangle('Curvature',[0 0], 'Position', [0 2 1 1]);
rectangle('Curvature',[0 0], 'Position', [1 2 1 1]);
rectangle('Curvature',[0 0], 'Position', [2 2 1 1]);
rectangle('Curvature',[0 0], 'Position', [3 2 1 1]);
rectangle('Curvature',[0 0], 'Position', [4 2 1 1]);
rectangle('Curvature',[0 0], 'Position', [0 3 1 1]);
rectangle('Curvature',[0 0], 'Position', [1 3 1 1]);
rectangle('Curvature',[0 0], 'Position', [2 3 1 1]);
rectangle('Curvature',[0 0], 'Position', [3 3 1 1]);
rectangle('Curvature',[0 0], 'Position', [4 3 1 1]);
rectangle('Curvature',[0 0], 'Position', [0 4 1 1]);
rectangle('Curvature',[0 0], 'Position', [1 4 1 1]);
rectangle('Curvature',[0 0], 'Position', [2 4 1 1]);
rectangle('Curvature',[0 0], 'Position', [3 4 1 1]);
rectangle('Curvature',[0 0], 'Position', [4 4 1 1]);
line([2,3],[2,3],'color',[0 0 0]);
a=1.8;
b=1.8;
k=-0.15;
l=-0.1;
rectangle('Curvature',[1 1],'Position',[a b 0.4 0.4],'facecolor',[0.9 0.4 0],'edgecolor',[0.9 0.4 0]);
rectangle('Curvature',[1 1],'Position',[a+0.1 b+0.23 0.05 0.05],'facecolor',[0 0 0]);
rectangle('Curvature',[1 1],'Position',[a+0.25 b+0.23 0.05 0.05],'facecolor',[0 0 0]);
line([a+0.125 a+0.02],[b+0.15 b+0.2],'color',[0 0 0]);
line([a+0.125 a+0.02],[b+0.125 b+0.125],'color',[0 0 0]);
line([a+0.125 a+0.066],[b+0.1 b+0.05],'color',[0 0 0]);
line([a+0.275 a+0.38],[b+0.15 b+0.2],'color',[0 0 0]);
line([a+0.275 a+0.38],[b+0.125 b+0.125],'color',[0 0 0]);
line([a+0.275 a+0.334],[b+0.1 b+0.05],'color',[0 0 0]);
rectangle('Curvature',[0.8 0.8], 'Position', [a+0.15 b+0.05 0.1 0.05]);
rectangle('Curvature',[1 1], 'Position', [a+0.195 b+0.135 0.01 0.01],'facecolor',[0 0 0]);
rectangle('Curvature',[1 1], 'Position', [a+0.12 b+0.25 0.005 0.005],'facecolor',[1 1 1]);
rectangle('Curvature',[1 1], 'Position', [a+0.27 b+0.25 0.005 0.005],'facecolor',[1 1 1]);
rectangle('Curvature',[0.8 0.8], 'Position', [k l 0.3 0.2],'facecolor',[0.8 0.8 0.8],'edgecolor',[0.8 0.8 0.8]);
rectangle('Curvature',[0.8 0.8], 'Position', [k+0.23 l+0.16 0.05 0.3],'facecolor',[0.8 0.8 0.8], 'edgecolor',[0.8 0.8 0.8]);
rectangle('Curvature',[1 1], 'Position', [k+0.26 l+0.42 0.001 0.001],'facecolor',[0 0 0]);
rectangle('Curvature',[0.8 0.8], 'Position', [k+0.2735 l+0.385 0.03 0.03],'facecolor',[0.9 0.5 0], 'edgecolor',[0.9 0.5 0]);
menu('Έναρξη παιχνιδιού','start');
a=a+1;
b=b+1;
clf
rectangle('Curvature',[0 0], 'Position', [0 0 1 1]);
rectangle('Curvature',[0 0], 'Position', [1 0 1 1]);
rectangle('Curvature',[0 0], 'Position', [2 0 1 1]);
rectangle('Curvature',[0 0], 'Position', [3 0 1 1]);
rectangle('Curvature',[0 0], 'Position', [4 0 1 1]);
rectangle('Curvature',[0 0], 'Position', [0 1 1 1]);
rectangle('Curvature',[0 0], 'Position', [1 1 1 1]);
rectangle('Curvature',[0 0], 'Position', [2 1 1 1]);
rectangle('Curvature',[0 0], 'Position', [3 1 1 1]);
rectangle('Curvature',[0 0], 'Position', [4 1 1 1]);
rectangle('Curvature',[0 0], 'Position', [0 2 1 1]);
rectangle('Curvature',[0 0], 'Position', [1 2 1 1]);
rectangle('Curvature',[0 0], 'Position', [2 2 1 1]);
rectangle('Curvature',[0 0], 'Position', [3 2 1 1]);
rectangle('Curvature',[0 0], 'Position', [4 2 1 1]);
rectangle('Curvature',[0 0], 'Position', [0 3 1 1]);
rectangle('Curvature',[0 0], 'Position', [1 3 1 1]);
rectangle('Curvature',[0 0], 'Position', [2 3 1 1]);
rectangle('Curvature',[0 0], 'Position', [3 3 1 1]);
rectangle('Curvature',[0 0], 'Position', [4 3 1 1]);
rectangle('Curvature',[0 0], 'Position', [0 4 1 1]);
rectangle('Curvature',[0 0], 'Position', [1 4 1 1]);
rectangle('Curvature',[0 0], 'Position', [2 4 1 1]);
rectangle('Curvature',[0 0], 'Position', [3 4 1 1]);
rectangle('Curvature',[0 0], 'Position', [4 4 1 1]);
line([2,3],[2,3],'color',[0 0 0]);
rectangle('Curvature',[1 1],'Position',[a b 0.4 0.4],'facecolor',[0.9 0.4 0],'edgecolor',[0.9 0.4 0]);
rectangle('Curvature',[1 1],'Position',[a+0.1 b+0.23 0.05 0.05],'facecolor',[0 0 0]);
rectangle('Curvature',[1 1],'Position',[a+0.25 b+0.23 0.05 0.05],'facecolor',[0 0 0]);
line([a+0.125 a+0.02],[b+0.15 b+0.2],'color',[0 0 0]);
line([a+0.125 a+0.02],[b+0.125 b+0.125],'color',[0 0 0]);
line([a+0.125 a+0.066],[b+0.1 b+0.05],'color',[0 0 0]);
line([a+0.275 a+0.38],[b+0.15 b+0.2],'color',[0 0 0]);
line([a+0.275 a+0.38],[b+0.125 b+0.125],'color',[0 0 0]);
line([a+0.275 a+0.334],[b+0.1 b+0.05],'color',[0 0 0]);
rectangle('Curvature',[0.8 0.8], 'Position', [a+0.15 b+0.05 0.1 0.05]);
rectangle('Curvature',[1 1], 'Position', [a+0.195 b+0.135 0.01 0.01],'facecolor',[0 0 0]);
rectangle('Curvature',[1 1], 'Position', [a+0.12 b+0.25 0.005 0.005],'facecolor',[1 1 1]);
rectangle('Curvature',[1 1], 'Position', [a+0.27 b+0.25 0.005 0.005],'facecolor',[1 1 1]);
rectangle('Curvature',[0.8 0.8], 'Position', [k l 0.3 0.2],'facecolor',[0.8 0.8 0.8],'edgecolor',[0.8 0.8 0.8]);
rectangle('Curvature',[0.8 0.8], 'Position', [k+0.23 l+0.16 0.05 0.3],'facecolor',[0.8 0.8 0.8], 'edgecolor',[0.8 0.8 0.8]);
rectangle('Curvature',[1 1], 'Position', [k+0.26 l+0.42 0.001 0.001],'facecolor',[0 0 0]);
rectangle('Curvature',[0.8 0.8], 'Position', [k+0.2735 l+0.385 0.03 0.03],'facecolor',[0.9 0.5 0], 'edgecolor',[0.9 0.5 0]);
while a~=k-0.05 && b~=l-0.1
y=0;
if l==-0.1 && k==-0.15
q=menu('Επιλέξτε κατεύθυνση','πάνω','δεξιά');
elseif k~=-0.15 && l==-0.1
q=menu('Επιλέξτε κατεύθυνση','πάνω','δεξιά','αριστερά');
elseif k==-0.15 && l~=-0.1
q=menu('Επιλέξτε κατεύθυνση','πάνω','δεξιά','κάτω');
y=1;
elseif k~=-0.15 && l~=-0.1
q=menu('Επιλέξτε κατεύθυνση','πάνω','δεξιά','αριστερά','κάτω');
end
if q==1
a=a-1;
l=l+1;
elseif q==2
b=b-1;
k=k+1;
elseif y==0 && q==3
a=a-1;
k=k-1;
elseif y==1 && q==3
b=b-1;
l=l-1;
elseif q==4
b=b-1;
l=l-1;
end
clf
rectangle('Curvature',[0 0], 'Position', [0 0 1 1]);
rectangle('Curvature',[0 0], 'Position', [1 0 1 1]);
rectangle('Curvature',[0 0], 'Position', [2 0 1 1]);
rectangle('Curvature',[0 0], 'Position', [3 0 1 1]);
rectangle('Curvature',[0 0], 'Position', [4 0 1 1]);
rectangle('Curvature',[0 0], 'Position', [0 1 1 1]);
rectangle('Curvature',[0 0], 'Position', [1 1 1 1]);
rectangle('Curvature',[0 0], 'Position', [2 1 1 1]);
rectangle('Curvature',[0 0], 'Position', [3 1 1 1]);
rectangle('Curvature',[0 0], 'Position', [4 1 1 1]);
rectangle('Curvature',[0 0], 'Position', [0 2 1 1]);
rectangle('Curvature',[0 0], 'Position', [1 2 1 1]);
rectangle('Curvature',[0 0], 'Position', [2 2 1 1]);
rectangle('Curvature',[0 0], 'Position', [3 2 1 1]);
rectangle('Curvature',[0 0], 'Position', [4 2 1 1]);
rectangle('Curvature',[0 0], 'Position', [0 3 1 1]);
rectangle('Curvature',[0 0], 'Position', [1 3 1 1]);
rectangle('Curvature',[0 0], 'Position', [2 3 1 1]);
rectangle('Curvature',[0 0], 'Position', [3 3 1 1]);
rectangle('Curvature',[0 0], 'Position', [4 3 1 1]);
rectangle('Curvature',[0 0], 'Position', [0 4 1 1]);
rectangle('Curvature',[0 0], 'Position', [1 4 1 1]);
rectangle('Curvature',[0 0], 'Position', [2 4 1 1]);
rectangle('Curvature',[0 0], 'Position', [3 4 1 1]);
rectangle('Curvature',[0 0], 'Position', [4 4 1 1]);
line([2,3],[2,3],'color',[0 0 0]);
rectangle('Curvature',[1 1],'Position',[a b 0.4 0.4],'facecolor',[0.9 0.4 0],'edgecolor',[0.9 0.4 0]);
rectangle('Curvature',[1 1],'Position',[a+0.1 b+0.23 0.05 0.05],'facecolor',[0 0 0]);
rectangle('Curvature',[1 1],'Position',[a+0.25 b+0.23 0.05 0.05],'facecolor',[0 0 0]);
line([a+0.125 a+0.02],[b+0.15 b+0.2],'color',[0 0 0]);
line([a+0.125 a+0.02],[b+0.125 b+0.125],'color',[0 0 0]);
line([a+0.125 a+0.066],[b+0.1 b+0.05],'color',[0 0 0]);
line([a+0.275 a+0.38],[b+0.15 b+0.2],'color',[0 0 0]);
line([a+0.275 a+0.38],[b+0.125 b+0.125],'color',[0 0 0]);
line([a+0.275 a+0.334],[b+0.1 b+0.05],'color',[0 0 0]);
rectangle('Curvature',[0.8 0.8], 'Position', [a+0.15 b+0.05 0.1 0.05]);
rectangle('Curvature',[1 1], 'Position', [a+0.195 b+0.135 0.01 0.01],'facecolor',[0 0 0]);
rectangle('Curvature',[1 1], 'Position', [a+0.12 b+0.25 0.005 0.005],'facecolor',[1 1 1]);
rectangle('Curvature',[1 1], 'Position', [a+0.27 b+0.25 0.005 0.005],'facecolor',[1 1 1]);
rectangle('Curvature',[0.8 0.8], 'Position', [k l 0.3 0.2],'facecolor',[0.8 0.8 0.8],'edgecolor',[0.8 0.8 0.8]);
rectangle('Curvature',[0.8 0.8], 'Position', [k+0.23 l+0.16 0.05 0.3],'facecolor',[0.8 0.8 0.8], 'edgecolor',[0.8 0.8 0.8]);
rectangle('Curvature',[1 1], 'Position', [k+0.26 l+0.42 0.001 0.001],'facecolor',[0 0 0]);
rectangle('Curvature',[0.8 0.8], 'Position', [k+0.2735 l+0.385 0.03 0.03],'facecolor',[0.9 0.5 0], 'edgecolor',[0.9 0.5 0]);
end
menu('Game over','Ok')

Best Answer

Attach your m-file with the paper clip icon. Don't paste in code this long into the editor. But anyway, this link is guaranteed to solve your problem http://blogs.mathworks.com/videos/2012/07/03/debugging-in-matlab/
Also, you can't do things like this (comparing floating point numbers for equality):
while a~=k-0.05 && b~=l-0.1