# Question:Break to form new lines

## Question:Break to form new lines

Maple

Working on a code to create random lines. Here is the code:

M:=1; N:=1500; R3:=rand(1..3): # M=lines, N=steps

for i from 1 to M do
X[i,0]:=0;
Y[i,0]:=0;
for j from 0 to N do
if j=1 then X[i,1]:=1; Y[i,1]:=0;
elif j>1 then
r:=R3();
if r=1 then X[i,j]:=2*X[i,j-1]-X[i,j-2]; Y[i,j]:=2*Y[i,j-1]-Y[i,j-2]
elif r=2 then X[i,j]:=X[i,j-1]+Y[i,j-1]-Y[i,j-2]; Y[i,j]:=Y[i,j-1]-X[i,j-1]+X[i,j-2];
elif r=3 then X[i,j]:=X[i,j-1]-Y[i,j-1]+Y[i,j-2]; Y[i,j]:=Y[i,j-1]+X[i,j-1]-X[i,j-2];
end if;
end if;
R[i,j]:=[X[i,j],Y[i,j]];
K[i,j]:=[X[i,j],Y[i,j]];
end do:
end do:

Now the code works fine. But I don't want the lines to cross its own path. I want it to stop if R[i,j]=R[i,k] for any 0<k<i-2 for j=0..N. What I have so far is:

for i from 1 to M do
for j from 1 to 40 do
R[i,j];
for k from 1 to j-2 do
if R[i,j]=K[i,k] then x:=j; print(b[i]=j); break; end if;
L[i,j]:=R[i,j];
end do;
end do;
end do;

Now it works aswell, but it doesn't stop when it hits the crossing point. I want it to stop so i get one b[i]=j per M. So I need it to break two for loops so that it goes through i M times and stops everytime it reaches a crossing point

﻿