## Useful Code

### Moving the Turtle

```
turtle.forward(100)
turtle.back(50)
turtle.right(90)
turtle.left(45)
turtle.goto(10,10)
turtle.home()
turtle.setheading(0)
```

### Changing the Pen

```
turtle.pencolor('red')
turtle.penup()
turtle.pendown()
turtle.pensize(4)
```

### Changing the Board

```
turtle.reset()
turtle.bgcolor('blue')
turtle.showturtle()
turtle.hideturtle()
```

## Exercise

Draw the following

- A square with sides of length 100
- An equilateral triangle with sides of length 80
- A noughts and crosses board
- Draw a star by turning an angle of 144 degrees.
- A red hexagon on a blue background.

# Lesson 2

The following program draws a purple square with a black border. Note the use of begin_fill() and end_fill()

```
import turtle
turtle.fillcolor('purple')
turtle.pencolor('black')
turtle.begin_fill()
turtle.forward(100)
turtle.left(90)
turtle.forward(100)
turtle.left(90)
turtle.forward(100)
turtle.left(90)
turtle.forward(100)
turtle.left(90)
turtle.end_fill()
```

The above requires a lot of cut and paste code: always a sign that there is a better way of doing things. Here’s one way:

```
import turtle
turtle.fillcolor('purple')
turtle.pencolor('black')
turtle.begin_fill()
for times in range(4):
turtle.forward(100)
turtle.left(90)
turtle.end_fill()
```

We are going to be drawing lots of squares. We can define the code to draw a square as a function, that way we can reuse it. (Learning to use functions is the main reason we are using turtle graphics!)

```
import turtle
def square():
for times in range(4):
turtle.forward(100)
turtle.left(90)
turtle.fillcolor('purple')
turtle.pencolor('black')
turtle.begin_fill()
square()
turtle.end_fill()
```

We can add a size **parameter** to the function. Now we can draw squares of different sizes.

```
import turtle
def square(size):
for times in range(4):
turtle.forward(size)
turtle.left(90)
square(50)
square(100)
square(200)
```

## Exercise

1) Enter the following code and run it. Make sure you understand what it’s doing.

```
import turtle
def square():
for times in range(4):
turtle.forward(100)
turtle.left(90)
for n in range(8):
square()
turtle.right(45)
```

2) What do you think the following code will do? Enter it and run it.

```
import turtle
def square(size):
for times in range(4):
turtle.forward(size)
turtle.left(90)
for n in range(8):
square(20*n)
```

3) Define a function to draw a triangle.

4) Use your triangle function to draw the following shape

## Extension

- Write a function to draw a pentagon
- Write a function to draw a hexagon
- Draw a function that accepts a parameter number_of_sides that draws a polygon with that number of sides
- Write a function to draw a chessboard
- Write a function to draw a honeycomb