http://www.perlmonks.org?node_id=214003


Yeah, yeah, cheesy title. Couldn't think of anything better, so sue me...

Anyway, This is an obfuscation contest. i'm going to lay down some parameters (hopefully strict, clear, and concise as to input and output) and you (my lucky reader) are going to try to create the most obfuscated program you can that adheres to the specifications.

Rules:

  1. You are to receive a number on command line. The number will be positive (> 0) and less than 999,999 (due to constraints on my time).
  2. You will output a certain number of primes equal to the number submitted on command line. They will probably not be the smallest, but they must be in order and no duplicates.
  3. The algorithm:
    1. Let p be 3.
    2. Iterate over the expression x^2 + x + p such that 0 < x < p.
    3. For every number iterated over, check to see whether it is prime or not (using any algorithm). If it is add it to the list of primes found so far.
    4. Increment p to the next prime.
    5. Repeat from step 2 until the number of primes specified is found.
  4. When printing primes, print 2 first, then the rest.
  5. Printing more primes is not faultable, but not optimal. Printing more than twice the number specified will automatically discount your entry.
  6. All primes output must be \s delimited.
  7. All entries must be smaller than 4k of text.
  8. All entries must finish before the heat death of the universe.
  9. Strict and warnings are not necessary. No modules.
That should be specific enough. If there are any ambiguities please let me know. Please treat this roughly the same as a golf contest, with a different goal in mind. And as always, have fun :-)

jynx

Update: The "contest" will finish December 1st (of 2002) and <shameless plug> there will be a prize! </shameless plug>

Update2: i'm not going to give a prize when only 2 people entered submissions (sorry). i may by consolation prizes for them so that they don't feel gypped, but hopefully i'll get more turn-out next time... ;-)