Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm looking for a relatively simple algorithm that can quickly be done by hand to refine an initial estimate for the sine of an angle in degrees.

I've memorized a few landmark values for sine and come up with some simple techniques such that I can rapidly estimate the sine of any angle (in degrees) to within 10% error. What I'd like to do now is be able to take that estimate and refine it, presumably through some simple iterative algorithm that I can perform on a white board, for instance.

share|cite|improve this question
So you have a white board but no pocket calculator? If the angle is given somehow, why not just measure the sine? – Hagen von Eitzen Sep 27 '12 at 17:53
What is your usual desired accuracy? You can use Bhaskara I's sine approximation formula to get within 2% relative error (and that is worst case scenario, most of the time it is less than 0.3%). – Ragib Zaman Sep 27 '12 at 17:55
Yes, I often have a whiteboard, or a scrap of paper and a pencil, but no calculator. By measure do you mean use the calculator, or actually measure the hypotenuse and height? The latter isn't generally possible (think for instance phase angles in AC waveforms) and the former is what I'm trying not to have to do. – sh1ftst0rm Sep 27 '12 at 17:56
@Ragib: Thanks, that will be a useful formula to learn; I was not familiar with it. This is quite a bit more accurate than what I currently have, and would probably be more than sufficient for the kind of back of the envelope calculations where this is useful. However, I still wonder if there's a simple iterative approach that could refine the estimate to any arbitrary level of accuracy. – sh1ftst0rm Sep 27 '12 at 18:05
up vote 2 down vote accepted

You should know $\sin(x)$ and $\cos(x)$ for $x = 0$, $30$, $60$, $90, \ldots, 360$ degrees. Memorize $\sin$ and $\cos$ of $6$ degrees and $12$ degrees and you can use the addition formulas to calculate $\sin$ and $\cos$ for all multiples of $6$ degrees (e.g. for $18$ degrees, write $18 = 30 - 12$). Then memorize $\sin$ and $\cos$ of $1$, $2$ and $3$ degrees and you can use the addition formulas to calculate $\sin$ and $\cos$ for all multiples of $1$ degree.

share|cite|improve this answer
Thanks, a very nice idea. I already have the sines for all the multiples of 10 degrees memorized, so I will probably just add the sines and cosines for 5 degrees, 3 degrees, and 1 degree. Ideally, I'd still prefer an algorithm where I can get progressively more accurate for any angle, even fractional angles. But if nobody else comes up with one, I will accept this answer, it is definitely a good one. – sh1ftst0rm Sep 27 '12 at 19:36

Interpolating $\cos$ at $0$, $\pm{\pi\over2}$, and $\pm{\pi\over3}$ gives, expressed as a function of degrees, $$p(x):=1-{49\over324\,000} x^2+{1\over 291\,600\,000}x^4\ .$$ Drawing the two plots over the interval $\bigl[{-{\pi\over2}},{\pi\over2}\bigr]$ you cannot distinguish them with a naked eye.

share|cite|improve this answer
Thanks, but I don't really consider 49/324000 something I can easily do with pencil and paper =). – sh1ftst0rm Sep 27 '12 at 19:29

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.