Oh, and if you remember from http://arduino.cc/forum/index.php/topic,107202.0.html I know all about state machines and recommend them in the right place.
Something as simple as this, while it could[/u] be done with a state machine, doesn't need to be done with a state machine. As you can see from that other thread, a state machine is simple once you know how to do them. Trying to get a novice coder to understand them whilst trying to get them to understand the basics of programming at the same time is not an easy task.
First steps first.