From 2b8d7a9b09f9a5ac3581a7f982f9ca0a8737ea19 Mon Sep 17 00:00:00 2001 From: "E. Choroba" Date: Wed, 29 Jan 2020 23:48:28 +0100 Subject: Add 045 solution (Square Secret Code + Source Dumper) by E. Choroba Quine added as an alternative solution --- challenge-045/e-choroba/perl/ch-1.pl | 17 +++++++++++++++++ challenge-045/e-choroba/perl/ch-2a.pl | 8 ++++++++ challenge-045/e-choroba/perl/ch-2b.pl | 1 + 3 files changed, 26 insertions(+) create mode 100755 challenge-045/e-choroba/perl/ch-1.pl create mode 100755 challenge-045/e-choroba/perl/ch-2a.pl create mode 100644 challenge-045/e-choroba/perl/ch-2b.pl (limited to 'challenge-045') diff --git a/challenge-045/e-choroba/perl/ch-1.pl b/challenge-045/e-choroba/perl/ch-1.pl new file mode 100755 index 0000000000..9a6b758b09 --- /dev/null +++ b/challenge-045/e-choroba/perl/ch-1.pl @@ -0,0 +1,17 @@ +#!/usr/bin/perl +use warnings; +use strict; + +sub square_secret_code { + my ($message) = @_; + my @code = ("") x 8; + for my $group (lc($message) =~ s/\s//gr =~ m/(.{1,8})/g) { + $code[$_] .= (split //, $group)[$_] // "" for 0 .. 7; + } + return join ' ', @code +} + +use Test::More tests => 1; +is square_secret_code('The quick brown fox jumps over the lazy dog'), + 'tbjrd hruto eomhg qwpe unsl ifoa covz kxey', + 'encode'; diff --git a/challenge-045/e-choroba/perl/ch-2a.pl b/challenge-045/e-choroba/perl/ch-2a.pl new file mode 100755 index 0000000000..a98ab5bf84 --- /dev/null +++ b/challenge-045/e-choroba/perl/ch-2a.pl @@ -0,0 +1,8 @@ +#!/usr/bin/perl +use warnings; +use strict; + +seek *DATA, 0 , 0; +print while ; +__DATA__ + diff --git a/challenge-045/e-choroba/perl/ch-2b.pl b/challenge-045/e-choroba/perl/ch-2b.pl new file mode 100644 index 0000000000..488703eba7 --- /dev/null +++ b/challenge-045/e-choroba/perl/ch-2b.pl @@ -0,0 +1 @@ +$_=q!print'$_=q*'.$_.'*;';s/\52/\41/g;print!;print'$_=q!'.$_.'!;';s/\52/\41/g;print \ No newline at end of file -- cgit