aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xchallenge-040/anton-fedotov/perl5/ch-1.pl32
-rwxr-xr-xchallenge-040/anton-fedotov/perl5/ch-2.pl25
2 files changed, 57 insertions, 0 deletions
diff --git a/challenge-040/anton-fedotov/perl5/ch-1.pl b/challenge-040/anton-fedotov/perl5/ch-1.pl
new file mode 100755
index 0000000000..e5849eeb51
--- /dev/null
+++ b/challenge-040/anton-fedotov/perl5/ch-1.pl
@@ -0,0 +1,32 @@
+#!/usr/bin/env perl
+
+##################################################
+# Perl Weekle Challenge 040 -> Chapter 1 #
+##################################################
+
+use v5.10;
+use strict;
+use warnings;
+
+my @arr1 = qw( I L O V E Y O U );
+my @arr2 = qw( T Z U Y U F R O M);
+my @arr3 = qw( T W I C E );
+my @arr4 = qw( ! ? £ $ % ^ & * );
+
+&print_arrays(\@arr1, \@arr2, \@arr3, \@arr4);
+
+sub print_arrays {
+ my $max_size = 0;
+ for (@_) {
+ my $size = scalar @$_;
+ $max_size = $size if $size > $max_size;
+ }
+
+ for my $i (0 .. $max_size) {
+ for (@_) {
+ if ($_->[$i]) { print $_->[$i] . ' ' }
+ else { print ' ' };
+ }
+ print "\n";
+ }
+}
diff --git a/challenge-040/anton-fedotov/perl5/ch-2.pl b/challenge-040/anton-fedotov/perl5/ch-2.pl
new file mode 100755
index 0000000000..9d03c94de5
--- /dev/null
+++ b/challenge-040/anton-fedotov/perl5/ch-2.pl
@@ -0,0 +1,25 @@
+#!/usr/bin/env perl
+
+##################################################
+# Perl Weekly Challenge 040, Chapter 2 #
+##################################################
+
+use strict;
+use warnings;
+use v5.10;
+
+my @numbers = (10, 4, 1, 8, 12, 3);
+my @indices = (0, 2, 5);
+
+say join ' ', @numbers;
+
+my @arr;
+push @arr, $numbers[$_] for @indices;
+@arr = sort {$a <=> $b} @arr;
+
+for (@indices) {
+ state $i = 0;
+ $numbers[$_] = $arr[$i++];
+}
+
+say join ' ', @numbers;