aboutsummaryrefslogtreecommitdiff
path: root/challenge-005
diff options
context:
space:
mode:
authorJohn Barrett <john@jbrt.org>2019-04-24 10:10:18 +0100
committerJohn Barrett <john@jbrt.org>2019-04-24 10:10:18 +0100
commit38636f3ebb8d38bf030d4108ea5d0e08b72da11d (patch)
tree55e5a85c735b28cfb8f62b2c03487c074c47959f /challenge-005
parent5be2e50c200ff7b0a81ab24bd825e374cc7f231c (diff)
downloadperlweeklychallenge-club-38636f3ebb8d38bf030d4108ea5d0e08b72da11d.tar.gz
perlweeklychallenge-club-38636f3ebb8d38bf030d4108ea5d0e08b72da11d.tar.bz2
perlweeklychallenge-club-38636f3ebb8d38bf030d4108ea5d0e08b72da11d.zip
Challenge 5 part 1 - first pass
Diffstat (limited to 'challenge-005')
-rwxr-xr-xchallenge-005/john-barrett/perl5/ch-1.pl18
1 files changed, 18 insertions, 0 deletions
diff --git a/challenge-005/john-barrett/perl5/ch-1.pl b/challenge-005/john-barrett/perl5/ch-1.pl
new file mode 100755
index 0000000000..0e920a4011
--- /dev/null
+++ b/challenge-005/john-barrett/perl5/ch-1.pl
@@ -0,0 +1,18 @@
+#!/usr/bin/env perl
+
+use strict;
+use warnings;
+use autodie;
+
+my $word = join '', sort { $a cmp $b } split '', lc $ARGV[0];
+my $wordlength = length $word;
+
+sub is_anagram {
+ my ( $dictword ) = @_;
+ return 0 if length $dictword != $wordlength;
+ $word eq join '', sort { $a cmp $b } split '', lc $dictword;
+}
+
+open my $fh, '<:encoding(UTF-8)', '/usr/share/dict/words';
+chomp( my @dict = <$fh> );
+printf "$_\n" for grep { is_anagram( $_ ) } @dict;