There HAS to be a program for this or something. It's unbelievably stressful manually ciphering through one block at a time.
I mean blocks which have their coins spent after being mined.
As far as I know, the only way to know if the block reward has been spent is to search through the entire blockchain to see if ANY other transaction references the transactionID of the block reward in its list of inputs.
Any such program that is going to run efficiently would probably need to pre-process the entire blockchain loading all transactions into an indexed table that would allow you to query input hashes.
Blockchain.info has such as database, and using their API it would be exceedingly simply to create a short script that would find each block reward and determine if/when it was spent.
I'm not sure if blockchain.info would be very happy though with someone flooding their servers with almost 600,000 requests in a short period of time.
Barring that, you'll need to find (or write) a program that will parse the blockchain and load it into something like mySQL.