Another two variant theorems which can also go by the name "monotone sequence theorems" are this pair, which allow us to find monotone subsequences in every sequence.

THEOREM. Let a_{1},a_{2},... be an infinite sequence of real numbers. Then there exists an infinite subsequence a_{k1},a_{k2},... (with k_{1}<k_{2}<...) which is (weakly) monotone.

THEOREM. Let a_{1},...,a_{mn+1} be a finite sequence of real numbers. Then either there exists a weakly ascending subsequence a_{j1}≤...≤a_{jm+1} (with j_{1}<...<j_{m+1}), OR there exists a weakly descending subsequence a_{k1}≥...≥a_{kn+1} (with k_{1}<...<k_{n+1}).
Using the first theorem, together with Gaff's theorem above, immediately proves the HeineBorel theorem and the BolzanoWeierstrass theorem (really both the same). The second theorem is a littleknown elementary exercise.
The amazing thing about these is not their difficulty but the fact that concrete conclusions can be drawn from what looks to be no information at all! It is also interesting to contemplate how the second theorem, which is somewhat more difficult to prove than the first, is a "finite version" of the first.
Proofs
The proofs of both theorems work by assuming no desired subsequence in one direction exists (say, there is no ascending subsequence as desired), and drawing a conclusion that a desired subsequence in the other direction must therefore exist. Both are elementary (in the sense of requiring no knowledge beyond high school mathematics, not in the sense of being easy!): since nothing is really known about the sequences, none of the highpowered tools of mathematics can blast away the problem, and we're forced to work. Both make good exercises, so you may care to try to prove them yourself before continuing to the proofs.
 monotone sequence theorem (infinite version) proof
 monotone sequence theorem (finite version) proof