## On the Subject of int##

Brain...freeze?

The string of numbers in the screen represents a *program* — a series of
instructions — that computes a string of three digits 0–9. Trace the execution
of the program (starting with the instruction on the far left) to obtain the
three digits computed, then use the instruction buttons to enter the result.

### Instructions

The three digits start out at 0. There is also a *pointer* pointing at one of the
digits which initially points at the first.

There is also a “state” value which is initially 0.

Once the state is 5, the program terminates.

0 | Move the pointer to the middle digit. |
---|---|

1 | If the current state is 0, jump to the instruction '2' in the program. The state becomes 1. |

2 | The current state changes as follows: 0 becomes 3, 2 becomes 3, 4 becomes 5. Other values remain unchanged. |

3 | Move the pointer one digit left (wrapping around as necessary). |

4 | If the current digit is 9, it becomes 0, otherwise it is incremented. |

5 | Move the pointer one digit right (wrapping around as necessary). |

6 | Move the pointer to the leftmost digit. |

7 | If the current digit is 0, it becomes 9, otherwise it is decremented. |

8 | Move the pointer to the rightmost digit. |

9 | All digits are incremented (except digits that were 9 become 0). |

EOF | (This is when execution hits the end of the The current state changes as follows: 1 becomes 2, 3 becomes 4. Other values remain unchanged. Then jump to the '1' instruction. |