Design a FSM to represent the logic of a vending machine. It sells water for 40p and Irn-Bru for 50p. It accepts 10p and 20p coins.
The user is not required to enter exact money - eg if they enter 60p they should still be able to purchase water.