Therefore, I will follow the excellent advice of Stephen Diehl, and will not write a monad-analogy tutorial. Instead, I will say: do the 20 Intermediate Exercises, and take the Monad Challenges. To paraphrase Euclid, there is no royal road to Monads; the exercises and challenges take you down that road at whose end you'll see at least part of why Monads are so useful.

If you were trying to learn group theory and people were standing around you saying "groups are like the integers", "groups are like Rubik's Cube", "groups are like m x n matrices", "groups are like baryons and mesons", your situation would be much like the student of Haskell amidst all the monad analogy tutorials. In a sense they're backwards. All those things are groups, just as burritos et al. can at least be thought of as monads--but not all groups are any one of those things.

But is there a better way? Yes, there is. After reading that someone said he did it in his head, the way to do it in your head occurred to me. *slaps forehead*
1000!, like any positive integer, has a unique prime factorization. In particular, we're interested in the primes 5 and 2, because 10 is 5 * 2. They certainly both appear in the prime factorization of 1000!, and they thus have positive exponents in said factorization. Let m be the exponent for 5, and let n be the exponent for 2. How to calculate them? Let's start with five. There are 200 multiples of 5 between 1 and 1000.There are 40 multiples of 25 between 1 and 1000.There are 8 multiples of 125 between 1 and 1000.There's 1 multiple of 625 between 1 and 10…

While going through
old papers, I found something I wrote as a follow-up to an article by
Aaron Banerjee in the February 1999 issue of the world
of 68’ micros (you
can find a somewhat mangled version online here).
Both concern recursion elimination, with the well-known “eight
queens” problem (place eight queens on a chess board so that none
attacks any other) as an example.
I don’t remember
whether I submitted it, or whether it was printed. I’m also
embarrassed by the barely legible layout—large Helvetica with
nearly no leading. To let me toss the printout and keep the text, and
to make it easier to read (if only by me), here it is again, with
formatting help from LibreOffice and editing for clarity and
concision, not to mention fixing bugs I caused by not directly copying and pasting source code. I will come back and fix indentation on the BASIC09 code, after a little experimentation. Recursion Elimination and
the Eight Queens Problem In
the February 1999 the world of 68’ micros, Aaro…