| 1 | Initialize array | - | - | [false, false, true, true, true, true, true, true, true, true] | Index: 0 1 2 3 4 5 6 7 8 9
Value: F F T T T T T T T T |
| 2 | Start p=2, check primes[2] | 2 | - | [false, false, true, true, true, true, true, true, true, true] | p=2, primes[2]=true |
| 3 | Mark multiples of 2 starting at 4 | 2 | 4,6,8 | [false, false, true, true, false, true, false, true, false, true] | Marked 4,6,8 as false |
| 4 | Increment p=3, check primes[3] | 3 | - | [false, false, true, true, false, true, false, true, false, true] | p=3, primes[3]=true |
| 5 | Mark multiples of 3 starting at 9 | 3 | 9 | [false, false, true, true, false, true, false, true, false, false] | Marked 9 as false |
| 6 | Increment p=4, check primes[4] | 4 | - | [false, false, true, true, false, true, false, true, false, false] | p=4, primes[4]=false, skip marking |
| 7 | Increment p=5, check p*p=25 > 9 stop | 5 | - | [false, false, true, true, false, true, false, true, false, false] | Stop as 5*5=25 > 9 |
| 8 | Collect primes | - | - | [false, false, true, true, false, true, false, true, false, false] | Primes at indices 2,3,5,7 |