Re: [QUIZ] Perl 'Easy' Quiz #2005-2
Rod Adams <[email protected]> Thu, 03 Feb 2005 23:23:30 -0600
| Newsgroups | gmane.comp.lang.perl.qotw.discuss |
|---|---|
| Message-ID | <[email protected]> |
>
>
>Your mission is to write as many different solutions as possible to this
>problem. You should write functions which will accept a single scalar
>argument containing the string, and return a single scalar containing the
>modified string.
>
>
I came up with the following block to put at the head of a single script
file to make life a little easier.
It takes every sub defined in the file, and feeds it every string that
was provided on the command line, and prints out the results in a nice
table. It even counts them for you. Put this in, then you only need to
worry about making more subs.
for $name (sort keys %::) {
next unless *{$name}{CODE};
printf("%2d %10s:", ++$solcount, $name);
for $input (@ARGV) {
print " ", *{$name}{CODE}->($input);
}
print "\n";
}
And now... a question of what makes up a "different" solution. Let's say
I have M different ways of detecting if I need to keep going, and N
different ways of doing the next step. Theoritically, I could easily
generate M*N "different" solutions by combining all the different
options. However, this is not only tediius for me to generate, but also
seems a bit at odds with the spirit of TMTOWTDI.
What are other's thoughts on this?
-- Rod Adams