Every prime crosses out its multiples from p², and the loop stops at √n. What survives is prime.
This interactive visualization needs JavaScript.