dt=10.^(-2); y=2.; x=1; z=1; t=0; n=0; Do[ xp=10 (y-x); yp=28 x-y - x z; zp = -8/3 z+x y; dx =xp*dt; dy=yp*dt; dz = zp *dt; aux = x; x = x+ dx; If[ aux*x <0, n=n+1;Print["change of sign at t= ", t]]; y=y+dy; z = z+dz; t =t +dt, {k,1,50 10^2}]; Print["number of changes of sign is ",n]; Print["t = ",t," ",x," ",y," ",z] change of sign at t= 36.48 change of sign at t= 38.51 change of sign at t= 39.25 change of sign at t= 39.96 change of sign at t= 42.11 change of sign at t= 45.53 change of sign at t= 48.82 change of sign at t= 49.56 number of changes of sign is 24 t = 50. 11.119 18.9299 18.2091 Now we do other things dt=10.^(-2); y=2.; x=1; z=1; t=0; n=0; pts={{x,y,z}}; Do[ xp=10 (y-x); yp=28 x-y - x z; zp = -8/3 z+x y; dx =xp*dt; dy=yp*dt; dz = zp *dt; aux = x; x = x+ dx; y=y+dy; z = z+dz; pts=Append[pts,{x,y,z}]; t =t +dt, {k,1,5 10^2}]; pts Graphics3D[Line[pts]]