clear all; walk=zeros(100,100); for j=1:100, finished=0; x0=50; y0=50; count=1; while (finished==0), walk(x0,y0)=walk(x0,y0)+1; a=rand(1.0); if (a<0.75), if (a<0.5), if (a<0.25), x0=x0+1; else x0=x0-1; end; else y0=y0+1; end; else y0=y0-1; end; if (walk(x0,y0)==0), walk(x0,y0)=1; x0=50; y0=50; count=count+1; if count>200, finished=1; end; end; end; x1=[1:1:100]; y1=[1:1:100]; v=[1:walk(50,50)/20.0:walk(50,50)]; contour (x1,y1,walk,v); axis equal; disp('paused'); pause; end;