Hi,

 I'm trying to write a word list generator which can
 generate all possible combinations of n characters, within n
 set of characters.
 
 
 So far, this is what I have come up. The only input is the
 lenght of the password the user wants.
 
 my @set = qw(a b c d e f g h i j k l m n o p q r s t u v w
 x y z);
 my $len = scalar @set;
 my $char1;
 my $char2;
 my $char3;
 my $char4;
 my $char5;
 my $char6;
 my $char7;
 my $char8;
 
 if ($pwlen == 8){
 
 for ($char1=0;$char1<$len;$char1++){
   for ($char2=0;$char2<$len;$char2++){
     for ($char3=0;$char3<$len;$char3++){
 
     ... upto
 
     for ($char8=0;$char8<$len;$char8++){
 
 print
 
"$set[$char1]$set[$char2]$set[$char3]$set[$char4]$set[$char5]$set[$char6]set[$char7]$set[$char8]\n";
 
 }}}}}}}}
 
 } elseif ( $pwlen == 7){
 
 for ($char2=0;$char2<$len;$char1++){
   for ($char3=0;$char3<$len;$char2++){
     for ($char4=0;$char4<$len;$char3++){
 
     ... upto
 
     for ($char8=0;$char8<$len;$char8++){
 
 print
 
"$set[$char2]$set[$char3]$set[$char4]$set[$char5]$set[$char6]$set[$char7]set[$char8]\n";
 
 }}}}}}}
 
 }
 
 
 The problem with the code above is that the length of words
 is hard coded. Only 8 maximum. I'm looking for ways on how
 to make my code flexible (length can be whatever the user
 wants ).
 
 My code is limited to 8 chars maximum length plus if I want
 to increase it, I have to add another set of for loops plus
 another variable to use, e.g., $char9, char10.. and so
 on...
 
 
 Any idea?
 
 
       






--
To unsubscribe, e-mail: beginners-unsubscr...@perl.org
For additional commands, e-mail: beginners-h...@perl.org
http://learn.perl.org/


Reply via email to