[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 = $\displaystyle \frac{Z_{\alpha/2} * p * (1-p)}{c^{2}}$

where n is the sample size, $\displaystyle Z_{\alpha/2}$ the value of Z, p the proportion and c the margin error.

So for my problem:

n = $\displaystyle \frac{2.58^2*p*(1-p)}{c^{2}} = \frac{2.58^2*0.5^2}{c^2} $ = 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 $\displaystyle Z_{\alpha/2}$ instead of $\displaystyle Z_{\alpha}$)?

Thanks (: