script to generate permutations

git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@1238 57a11ea4-9604-0410-9ed3-97b8803252fd
zzzoldfeatures/xacc-12-patch
Linas Vepstas 28 years ago
parent f973c70e3d
commit f3d32f27ad

@ -0,0 +1,36 @@
#!/usr/bin/perl
#
# This is a short perl script that prints all permutations
# of five objects; should be easy to generalize to more.
sub rotate {
local ($n, $i);
$n = $_[0];
$tmp = $arr[0];
for ($i=0; $i<$n-1; $i++) {
$arr[$i] = $arr[$i+1];
}
$arr[$n-1] = $tmp;
}
sub recur {
local ($n, $i);
$n = $_[0];
if (3>=$n) {
print "DECLARE ($arr[4], $arr[3], $arr[2])\n";
return;
}
for ($i=0; $i<$n-1; $i++) {
&rotate ($n-1);
&recur ($n-1);
}
}
@arr=(DESC,MEMO,AMT,NUM,DATE);
# @arr=(1..5);
&recur (6);
Loading…
Cancel
Save