4-14 Construct the reflections of a light ray inside a square
> restart:
> m:=1.7123:x:=0:y:=0:v:=[[x,y]]:
> for k to 100 do xx:=floor(x)+1:yy:=floor(y)+1:if(yy-y)>m*(xx-x) then x:=xx:y:=m*x else y:=yy:x:=y/m:fi:v:=[op(v),[1-abs(x-2*floor(x/2)-1),1-abs(m*x-2*floor(m*x/2)-1)]] od:
> plot(v,scaling=constrained);
>