Project Euler 187: Semiprimes

For my next problem, I selected the 151st least solved problem (at the time) on Project Euler, 187 (Semiprimes). In 187, we are searching for how many integers under 100 million with precisely two, not necessarily distinct, prime factors.

I know there are a bunch of problems in Project Euler that require generating primes, so the first thing I did was to come up with a C# implementation of the Sieve of Eratosthenes. I've coded the sieve before, but in lisp.

After coding up the sieve, I figured this to be an easy problem. Basically, I'd just have to multiply every prime number by every prime number, where the product is less than 10 million. 2 is the smallest prime, so the largest prime number that can be used as a factor (and still multiply by 2 and be under 10 million) is 5 million.

Wasn't difficult, and I don't think the code was interesting, so I'm not posting it. If you want it, ask.