diff options
| author | Mohammad S Anwar <Mohammad.Anwar@yahoo.com> | 2022-10-02 23:52:11 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-10-02 23:52:11 +0100 |
| commit | c0eb045a43bfc282a9b457e2934835529910457e (patch) | |
| tree | 22ca05c2cb87cc8329f623b61effe90a0c0ff1ac | |
| parent | f1d9f736f128e7d94b6604961d53f1c1d824c284 (diff) | |
| parent | 885e43402786b8a31d8e123a4c0f6be338a73e07 (diff) | |
| download | perlweeklychallenge-club-c0eb045a43bfc282a9b457e2934835529910457e.tar.gz perlweeklychallenge-club-c0eb045a43bfc282a9b457e2934835529910457e.tar.bz2 perlweeklychallenge-club-c0eb045a43bfc282a9b457e2934835529910457e.zip | |
Merge pull request #6831 from jaldhar/challenge-184
Challenge 184 by Jaldhar H. Vyas.
| -rw-r--r-- | challenge-184/jaldhar-h-vyas/blog.txt | 1 | ||||
| -rwxr-xr-x | challenge-184/jaldhar-h-vyas/perl/ch-1.pl | 8 | ||||
| -rwxr-xr-x | challenge-184/jaldhar-h-vyas/perl/ch-2.pl | 37 | ||||
| -rwxr-xr-x | challenge-184/jaldhar-h-vyas/raku/ch-1.raku | 9 | ||||
| -rwxr-xr-x | challenge-184/jaldhar-h-vyas/raku/ch-2.raku | 37 |
5 files changed, 92 insertions, 0 deletions
diff --git a/challenge-184/jaldhar-h-vyas/blog.txt b/challenge-184/jaldhar-h-vyas/blog.txt new file mode 100644 index 0000000000..d4509e70ac --- /dev/null +++ b/challenge-184/jaldhar-h-vyas/blog.txt @@ -0,0 +1 @@ +https://www.braincells.com/perl/2022/10/perl_weekly_challenge_week_184.html
\ No newline at end of file diff --git a/challenge-184/jaldhar-h-vyas/perl/ch-1.pl b/challenge-184/jaldhar-h-vyas/perl/ch-1.pl new file mode 100755 index 0000000000..92656f0119 --- /dev/null +++ b/challenge-184/jaldhar-h-vyas/perl/ch-1.pl @@ -0,0 +1,8 @@ +#!/usr/bin/perl +use 5.030; +use warnings; + +my @list = @ARGV; +my $seq = '00'; +my @output = map { s/^../$seq++/emsx; $_; } @list; +say join q{ }, @output;
\ No newline at end of file diff --git a/challenge-184/jaldhar-h-vyas/perl/ch-2.pl b/challenge-184/jaldhar-h-vyas/perl/ch-2.pl new file mode 100755 index 0000000000..a034ca5d70 --- /dev/null +++ b/challenge-184/jaldhar-h-vyas/perl/ch-2.pl @@ -0,0 +1,37 @@ +#!/usr/bin/perl +use 5.030; +use warnings; + +sub printArray { + my ($array) = @_; + + my @output = map { q{[} . (join q{,}, @{$_}) . q{]} } @{$array}; + + return q{[} . (join q{, }, @output) . q{]}; +} + +my @list = @ARGV; +my @allInts; +my @allAlphas; + +for my $string (@list) { + my @ints; + my @alphas; + + for my $char (split q{ }, $string) { + if ($char =~ /[0-9]/) { + push @ints, $char; + } elsif ($char =~ /[a-z]/) { + push @alphas, "'$char'"; + } + } + + if (@ints) { + push @allInts, \@ints; + } + if (@alphas) { + push @allAlphas, \@alphas; + } +} + +say printArray(\@allInts), ' and ', printArray(\@allAlphas); diff --git a/challenge-184/jaldhar-h-vyas/raku/ch-1.raku b/challenge-184/jaldhar-h-vyas/raku/ch-1.raku new file mode 100755 index 0000000000..2129668880 --- /dev/null +++ b/challenge-184/jaldhar-h-vyas/raku/ch-1.raku @@ -0,0 +1,9 @@ +#!/usr/bin/raku + +sub MAIN ( + *@list +) { + my $seq = '00'; + my @output = @list.map({ $_.subst(/^../, $seq++)}); + @output.join(q{ }).say; +}
\ No newline at end of file diff --git a/challenge-184/jaldhar-h-vyas/raku/ch-2.raku b/challenge-184/jaldhar-h-vyas/raku/ch-2.raku new file mode 100755 index 0000000000..d20a9ad881 --- /dev/null +++ b/challenge-184/jaldhar-h-vyas/raku/ch-2.raku @@ -0,0 +1,37 @@ +#!/usr/bin/raku + +sub printArray(@array) { + + my @output = @array.map({ q{[} ~ $_.join(q{,}) ~ q{]} }); + + return q{[} ~ @output.join(q{, }) ~ q{]}; +} + +sub MAIN( + *@list #= strings containing digits and lower case letters +) { + my @allInts; + my @allAlphas; + + for @list -> $string { + $string.split(q{ }).classify({ + if $_ ~~ 0..9 { + 'integer' + } elsif $_ ~~ $_ ~~ 'a'..'z' { + 'alpha'; + } + }, + :as({ $_ ~~ 'a'..'z' ?? "'$_'" !! $_; }), + :into( my %type ) + ); + + if %type{'integer'} { + @allInts.push(%type{'integer'}); + } + if %type{'alpha'} { + @allAlphas.push(%type{'alpha'}); + } + } + + say printArray(@allInts), ' and ', printArray(@allAlphas); +}
\ No newline at end of file |
