[SOLVED] How to find the sample size?

Hello, this question seems rather simple but for some reason I can't see what to use to solve it.

Question : We want to do a study to determine the proportion of urban owners that have more than 1 computer.

I need to find the sample size to be certain at 99% that the estimation will be at most 3% of the real proportion.

A friend of mine suggested to use

n =

where n is the sample size, the value of Z, p the proportion and c the margin error.

So for my problem:

n = = 1849

My 3 questions:

a) Is it the right formula? if so where does it come from?

b) Why do we use p=0.5 when we have no clue what the proportion is going to be?

c) Why do we take the value of Z as a bilateral test (hence the instead of )?

Thanks (: