LaTex
LaTex is an open source typesetting language designed specifically for mathematics. There are several versions for use on PCs , Macs, or Linux machines. The one which I use and recommend is MikTex. Another version, which I have not used, is Tex Live.
A good book on how to use LaTex is LaTex: A Document Preparation System, by Leslie Lamport.
No matter what version of LaTex you install, you'll need an editor. My experience is with Windows. Notepad will do, but I wouldn't recommend it. There are a number of dedicated LaTex editors out there. I've used both WinShell and LEd which are freeware. I prefer the features of LEd, but it is a bit persnickety. On the other hand, WinShell is more basic, but it has never given me any trouble.
If you are using a Mac or Linux machine dig around with Google and I'm sure you'll find a suitable editor.
Some Fun Mathematics Links
Yes, I used the words fun and mathematics in the same sentence. I guess that makes me a nerd.
