initial checkin from subversion
This commit is contained in:
38
kombi-recurs.pl
Normal file
38
kombi-recurs.pl
Normal file
@@ -0,0 +1,38 @@
|
||||
#!/usr/bin/perl -W
|
||||
|
||||
$wort="Michael";
|
||||
$outword=$wort; #only to have same length
|
||||
$zu=1;
|
||||
|
||||
ForS($wort,0);
|
||||
print ("\n");
|
||||
|
||||
sub ForS{
|
||||
my $toUseWord = shift;
|
||||
my $Ebene = shift;
|
||||
my $i1;
|
||||
|
||||
if ($Ebene == length($wort)) {
|
||||
print( $outword . "|");
|
||||
if (($zu%10) == 0) { print("\n"); }
|
||||
$zu++;
|
||||
}
|
||||
if ($Ebene < length($wort)) {
|
||||
for ($i1=0;$i1<length($toUseWord);$i1++) {
|
||||
$outword = replacepos($outword,$Ebene,1,substr($toUseWord,$i1,1));
|
||||
ForS(replacepos($toUseWord, $i1 , 1, ""), $Ebene + 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
sub replacepos{
|
||||
my $in = shift;
|
||||
my $spos = shift;
|
||||
my $len = shift;
|
||||
my $rep = shift;
|
||||
my $part1 =substr($in,0,$spos);
|
||||
my $part2 =substr($in,$spos+$len,length($in) - ($spos+$len));
|
||||
return $part1 . $rep . $part2;
|
||||
}
|
||||
|
||||
# vim: ts=2 hlsearch si
|
||||
Reference in New Issue
Block a user