#!/usr/bin/perl use strict; my @palindromes = (); my @names = qw( Aaron Adam Amir Ann Anna Art Axel Brent Brian Charles Chuck Cris Dave Don Dori Doug Eva Fred Gregor Ian Ima Ira Jarl Jason Jay Jeff Joe Joel John Kari Kim Kirk Kris Lar Leo Lex Lin Mara Marc Mark Mary Michael Mike Miki Mott Naim Nils Nora Norm Omar Pete Raj Ralf Ram Ramon Rik Rod Roger Ron Tom Tony Tran Travis Sarah Palin ); for my $word1 (@names) { for my $word2 (@names) { for my $word3 (@names) { #if ($word1 eq $word2) #next; if ( palin( $word1, $word2, $word3 ) ) { push @palindromes, $word1,'',$word2,'', $word3; print "$word1 $word2 $word3\n"; last; } else { if ( palin( $word1, $word2 ) ) { push @palindromes, $word1,'',$word2; print "$word1 $word2\n"; last; } } } } } sub palin { my $names1 = shift; my $names2 = shift; my $names3 = shift; my $string = join( '',$names1,$names2,$names3); my $reversestring = reverse($string); return ( uc($reversestring) eq uc($string)); }