Happy 3rd birthday PWC. As we know, three is a prime number, which is the theme of this weeks challenges.
Two relatively straight forward tasks this week, so not much explanation required. Both tasks use a
is_prime method which I took from a previous week. Given an integer, it will true True / False ('1' / undef in Perl) if that number is an integer.
Write a script to find out all Additive Primes <= 100. Additive primes are prime numbers for which the sum of their decimal digits are also primes.
I have a set (hash in Perl) called
primes that has the primes found so far. We know that the sum of the digits will never be higher than than the number itself.
I loop from 1 to 100, add the number to the
primes set. If the sum of the number is also a prime, I add it to the
additive_primes list (array in Perl).
Finally I display the list as output.
$ ./ch-1.py 2, 3, 5, 7, 11, 23, 29, 41, 43, 47, 61, 67, 83, 89
Write a script to compute first series Cuban Primes <= 1000.
For this task I have a counter
x that starts from one. For each number, I calculate
3x² + 3x + 1 (taken from the wikipedia page). If that number is > 1000, I exit the loop. If that number is a prime, I add it to the
Like with the previous task, I end by printing the list. I notice that the example has a full stop at the end. Not sure if this is intentional or not.
$ ./ch-2.py 7, 19, 37, 61, 127, 271, 331, 397, 547, 631, 919