Take the 2-minute tour ×
Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. It's 100% free, no registration required.

I've drawn two random, non-parallel, straight lines on a plane. They cross over, forming two angles, $a$ and $b$, where ($a + b + a + b) = 1$ (or $360^\circ$) and $a ≤ b$. (Making $a$ either the acute angle or a right angle.)

Using only a compass and straight edge, how would I find the value of $a$? It is acceptable to use an infinite number of steps.

(This is an abstract recreational puzzle rather than a practical question. If it were practical, I'd acquire a protractor.)

share|improve this question

2 Answers 2

up vote 4 down vote accepted

Since you can bisect angles, erect a perpendicular to one of the lines, and use binary search to find the binary representation of how large a fraction of a right angle $a$ is.

share|improve this answer
Ah, this method converges linearly, which makes it better than my answer which converges only logarithmically. Now is there an algorithm that converges superlinearly? –  Rahul Jan 12 '12 at 13:39
You could even abandon the search when you decide you've got an answer that's "close enough" and know how much error the early exit represents. Hurrah! –  billpg Jan 12 '12 at 13:53
@Rahul: That would seem to require a cost model that lets us read unboundedly many bits of information off the drawing at constant cost. I'm not sure I would consider that natural. –  Henning Makholm Jan 13 '12 at 3:25

Construct the angle $qa$ by making $q$ stacked copies of $a$. Count how many full turns you make in this process, say $p$. The value of $a$ is between $2\pi \frac p q$ and $2\pi\frac{p+1}q$. Now send $q$ to infinity.

(You did say "abstract" and "[im]practical"...)

share|improve this answer

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.