aboutsummaryrefslogtreecommitdiff
path: root/challenge-146/duncan-c-white/perl/ch-1.pl
diff options
context:
space:
mode:
authorMohammad S Anwar <Mohammad.Anwar@yahoo.com>2022-01-09 10:23:06 +0000
committerGitHub <noreply@github.com>2022-01-09 10:23:06 +0000
commit55894e4f1ed9d9b95d58a7fefa70ec5b5fad046e (patch)
treeca584c9fe818d3cba2c0393086903a2e0cc41809 /challenge-146/duncan-c-white/perl/ch-1.pl
parent2c08f1a5139042558aa0bfd57ba8350f542073d5 (diff)
parentb2a17ffd1dc54aae0fb98681489af4604cf49cc2 (diff)
downloadperlweeklychallenge-club-55894e4f1ed9d9b95d58a7fefa70ec5b5fad046e.tar.gz
perlweeklychallenge-club-55894e4f1ed9d9b95d58a7fefa70ec5b5fad046e.tar.bz2
perlweeklychallenge-club-55894e4f1ed9d9b95d58a7fefa70ec5b5fad046e.zip
Merge pull request #5486 from dcw803/master
imported my solutions to both tasks
Diffstat (limited to 'challenge-146/duncan-c-white/perl/ch-1.pl')
-rwxr-xr-xchallenge-146/duncan-c-white/perl/ch-1.pl49
1 files changed, 49 insertions, 0 deletions
diff --git a/challenge-146/duncan-c-white/perl/ch-1.pl b/challenge-146/duncan-c-white/perl/ch-1.pl
new file mode 100755
index 0000000000..c90a9b20de
--- /dev/null
+++ b/challenge-146/duncan-c-white/perl/ch-1.pl
@@ -0,0 +1,49 @@
+#!/usr/bin/perl
+#
+# TASK #1 - 10001st Prime Number
+#
+# Write a script to generate the 10001st prime number.
+#
+# (Remember that 2 is the 1st prime number).
+#
+#
+# MY NOTES: Very easy, especially (tada) if you happen to have a prime
+# generating module that you've already used several times in these
+# challenges..
+#
+
+use strict;
+use warnings;
+use feature 'say';
+use Getopt::Long;
+use Data::Dumper;
+
+use lib qw(.);
+use MakePrimes;
+
+my $debug=0;
+die "Usage: nth-prime [--debug] [N, default 10001]\n" unless
+ GetOptions( "debug"=>\$debug ) && @ARGV<2;
+
+my $n = shift // 10001;
+
+prime_debug( $debug );
+
+my $bandwidth = 10000;
+my $upto = $bandwidth;
+my @primes = primes_upto( $upto );
+
+#die Dumper(\@primes);
+
+my $primesfound = @primes;
+
+while( $primesfound < $n )
+{
+ my $from = $upto;
+ $upto += $bandwidth;
+ my @moreprimes = more_primes( $from, $upto );
+ push @primes, @moreprimes;
+ $primesfound = @primes;
+}
+
+say $primes[$n-1];