Niven’s theorem asserts that $\{\cos (r\pi ) \mid r\in \mathbb {Q}\}\cap \mathbb {Q}=\{0,\pm 1,\pm 1/2\}.$ In this paper, we use elementary techniques and results from arithmetic dynamics to obtain an algorithm for classifying all values in the set $\{\cos (r\pi ) \mid r\in \mathbb {Q}\}\cap K$, where K is an arbitrary number field.