import math from ezgraphics import GraphicsWindow sqr = int(input("Enter square size of graphics window: ")) #sqr = 512 win = GraphicsWindow(sqr,sqr) #create a drawing window canvas = win.canvas() x_left = 1 x_right = sqr y_down = 1 y_up = sqr canvas.drawRectangle(0,0,sqr-1,sqr-1) x = y = 0 for i in range(1,2*int(math.log2(sqr))): if i%2 == 1: if i%4 == 1: #1,5,9,... x_left = (x_left+x_right) // 2 canvas.setColor("black") canvas.drawLine(x_left,y_down, x_left,y_up) canvas.setColor("yellow") canvas.drawLine(x,y, x_left,y_up) x = x_left y = y_up else: #3,7,11,... x_right = (x_left+x_right) // 2 canvas.setColor("black") canvas.drawLine(x_right,y_down, x_right,y_up) canvas.setColor("yellow") canvas.drawLine(x,y, x_right,y_down) x = x_right y = y_down else: if i%4 == 2: #2,6,10,... y_up = (y_up+y_down) // 2 canvas.setColor("black") canvas.drawLine(x_left,y_up, x_right,y_up) canvas.setColor("yellow") canvas.drawLine(x,y, x_right,y_up) x = x_right y = y_up else: #4,8,12,... y_down = (y_up+y_down) // 2 canvas.setColor("black") canvas.drawLine(x_left,y_down, x_right,y_down) canvas.setColor("yellow") canvas.drawLine(x,y, x_left,y_down) x = x_left y = y_down #print(x_left,x_right," ",y_down,y_up) print("Look at the graphics window")