'''Program to draw a Koch fractal using turtle graphics and recursion.''' import turtle # length of a side of the triangle SIDE_LEN = 300 def draw_side(size, order): '''Draw one side of the triangle of length size, where the side is an order 'order' fractal.''' if order == 0: # base case - order 0 fractal (straight line) turtle.forward(size) else: # recursive case - four order n - 1 fractals draw_side(size / 3, order - 1) turtle.left(60) draw_side(size / 3, order - 1) turtle.right(120) draw_side(size / 3, order - 1) turtle.left(60) draw_side(size / 3, order - 1) def main(): turtle.up() turtle.goto(-SIDE_LEN/2, SIDE_LEN/2) turtle.down() turtle.speed('fastest') for i in range(3): draw_side(SIDE_LEN, 3) turtle.right(120) main()