For part c, the solution says the following:
But why isn't it $P(x = 500)$, and then we use continuity correction so it becomes $P(499.5 < x < 500.5)$ because we're approximating a binomial using normal approx? How is the probability of finding exactly $500$ the same as the probability of finding less than $500$?


When they say "finding 500 acceptable circuits," they mean "finding at least 500 acceptable circuits." This is a common wording ambiguity in probability questions. As a clue to the fact that they meant "at least 500," note that the problem statement implies that there is a minimum batch size for which $P(500\text{ circuits})>0.9$. This would not be the case if they meant $P(X=500)$; in that case, the probability would always be much less than $0.9$ no matter what the batch size was.
Think of the practical situation; the company is happy as long as they have at least 500 good circuits. The event of having exactly 500 circuits is not interesting.
To make things more confusing, the solution wrote $P(X<500)$, when they should have wrote $P(X>500)$. Or, they could have kept is as $P(X<500)$, but then they would have to replace the probability of $0.9$ with $0.1$.
A little discussion on the ambiguity of English.
If there are 5 elephants in a room, then can I truthfully say, "There are three elephants in the room."?
On the one hand, no, the correct count is five.
On the other hand, if there was an apple and an orange in the room, then the statement "There is an apple in the room" would be truthful, and would not preclude the existence of the additional orange. In the same way, saying "There are three elephants in the room" is truthful, and does not preclude the existence of an additional two elephants.
Therefore, the statement "There are three elephants in the room" is ambiguous, and should be replaced with either "There are exactly three elephants in the room" or "There are at least three elephants in the room" according to the desired intention.