aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad S Anwar <Mohammad.Anwar@yahoo.com>2019-04-02 18:11:31 +0100
committerGitHub <noreply@github.com>2019-04-02 18:11:31 +0100
commitb25ffcc830e3b8e5cde6ffa3d9d1783483064212 (patch)
treed35e7c57187497ab9d7205272e31bc5665bf5ff3
parent38c9b9ddbf968f40fd6a8adb4bf520fd20227e2d (diff)
parent89ddd6de0e6560f53327880b3b5c7eac93f8b28b (diff)
downloadperlweeklychallenge-club-b25ffcc830e3b8e5cde6ffa3d9d1783483064212.tar.gz
perlweeklychallenge-club-b25ffcc830e3b8e5cde6ffa3d9d1783483064212.tar.bz2
perlweeklychallenge-club-b25ffcc830e3b8e5cde6ffa3d9d1783483064212.zip
Merge pull request #7 from drclaw1394/master
My solutions for week 2 challenge 1. pl and p6
-rw-r--r--challenge-002/ruben-westerberg/README2
-rwxr-xr-xchallenge-002/ruben-westerberg/ch-1.p64
-rwxr-xr-xchallenge-002/ruben-westerberg/ch-1.pl5
-rwxr-xr-xchallenge-002/ruben-westerberg/ch-2.p62
-rwxr-xr-xchallenge-002/ruben-westerberg/ch-2.pl26
5 files changed, 39 insertions, 0 deletions
diff --git a/challenge-002/ruben-westerberg/README b/challenge-002/ruben-westerberg/README
index 89369bf20d..58eaaedd18 100644
--- a/challenge-002/ruben-westerberg/README
+++ b/challenge-002/ruben-westerberg/README
@@ -1 +1,3 @@
Solution by Ruben Westerberg
+
+inputs via command line arguments
diff --git a/challenge-002/ruben-westerberg/ch-1.p6 b/challenge-002/ruben-westerberg/ch-1.p6
new file mode 100755
index 0000000000..4ce164234e
--- /dev/null
+++ b/challenge-002/ruben-westerberg/ch-1.p6
@@ -0,0 +1,4 @@
+#!/usr/bin/env perl6
+$_ = join " ",@*ARGS;
+
+s:g/(\-|\+)?(0+)(\d*\.?\d+)/{$0!~~"-"??($0//"")~$2!!$/}/;.say;
diff --git a/challenge-002/ruben-westerberg/ch-1.pl b/challenge-002/ruben-westerberg/ch-1.pl
new file mode 100755
index 0000000000..ac4cf70614
--- /dev/null
+++ b/challenge-002/ruben-westerberg/ch-1.pl
@@ -0,0 +1,5 @@
+#!/usr/bin/env perl
+#
+$_= join " ", @ARGV;#"010, 02, 0343";
+
+s/(\-|\+)?(0+)(\d*\.?\d+)/($1 ne "-") ? ($1 \/\/ "").$3:$&/ge;print $_;
diff --git a/challenge-002/ruben-westerberg/ch-2.p6 b/challenge-002/ruben-westerberg/ch-2.p6
new file mode 100755
index 0000000000..c011ae237c
--- /dev/null
+++ b/challenge-002/ruben-westerberg/ch-2.p6
@@ -0,0 +1,2 @@
+#!/usr/bin/env perl6
+@*ARGS>>.Num>>.base(35)>>.&{say "Base 35: $_"; $_}>>.parse-base(35)>>.&{say "Base 10: $_"};
diff --git a/challenge-002/ruben-westerberg/ch-2.pl b/challenge-002/ruben-westerberg/ch-2.pl
new file mode 100755
index 0000000000..66e78301c8
--- /dev/null
+++ b/challenge-002/ruben-westerberg/ch-2.pl
@@ -0,0 +1,26 @@
+#!/usr/bin/env perl
+my $b=35;
+foreach (@ARGV) {
+ my $power=0;
+ while (int($_/ $b**++$power) >= 1){};
+ $power--;
+ my @out=();
+ while ($power >= 0) {
+ my $place=$b**$power;
+ my $val=int($_ / $place);
+ my $digit= $val >= 10 ? chr(ord('A')+($val-10)) : $val;
+ push @out, $digit;
+ $_= $_- $place*$val;
+ $power--;
+ }
+ $base35=join "", @out;
+ print "Base 35: $base35\n";
+ my $place= length $base35;
+ $_=reverse $base35;
+ my $sum=0;
+ while(--$place >=0){
+ $val=chop $_;
+ $sum += $b**$place * (scalar (grep ($_ eq $val, "A".."Y")) ? (ord($val)-55) : $val);
+ }
+ print "Base 10: $sum\n";
+}