def shadedsquare(n): pts1 = [] pts2 = [] pts3 = [] pts4 = [] pts5 = [] pts6 = [] pts7 = [] pts8 = [] pts9 = [] pts10 = [] last = (0,0) for i in range(n): select = randint(0,18) (x,y) = last if 0 <= select <= 1: last = (0.3*x,0.3*y) pts1.append(last) if 2 <= select <= 3: last = (0.3*x + 0.4,0.3*y) pts2.append(last) if 4 <= select <= 5: last = (0.3*x,0.3*y + 0.3) pts3.append(last) if 6 <= select <= 7: last = (0.3*x + 0.4,0.3*y +0.3) pts4.append(last) if 8 <= select <= 9: last = (0.3*x + 0.2, 0.3*y +0.15) pts5.append(last) if 10 <= select <= 11: last = (0.3*x + 0.2, 0.3*y) pts6.append(last) if 12 <= select <= 13: last = (0.3*x, 0.3*y + 0.15) pts7.append(last) if 13 <= select <= 14: last = (0.3*x + 0.2, 0.3*y + 0.3) pts8.append(last) if 15 <= select <= 16: last = (0.3*x + 0.4, 0.3*y + 0.15) pts9.append(last) if 17 <= select <= 18: last = (0.5*x + 0.14, 0.5*y + 0.1) pts10.append(last) show(points(pts1, color='green') + points(pts2, color='green') + points(pts3, color='green') + points(pts4, color ='green') + points(pts5, color = 'purple') + points(pts6, color ='red') + points(pts7, color = 'blue') + points(pts8, color = 'red') + points(pts9, color = 'blue') + points(pts10, color = 'yellow'),aspect_ratio=1) shadedsquare(5000)