for( my $i = 0; $i < 17; ++$i ) { my $j = $i; printf "%2u: %s\n", $i, join' ', map{ sprintf "%2u", $j = ( $j + 13 ) % 17 } 0 .. 16; }; 0: 13 9 5 1 14 10 6 2 15 11 7 3 16 12 8 4 0 1: 14 10 6 2 15 11 7 3 16 12 8 4 0 13 9 5 1 2: 15 11 7 3 16 12 8 4 0 13 9 5 1 14 10 6 2 3: 16 12 8 4 0 13 9 5 1 14 10 6 2 15 11 7 3 4: 0 13 9 5 1 14 10 6 2 15 11 7 3 16 12 8 4 5: 1 14 10 6 2 15 11 7 3 16 12 8 4 0 13 9 5 6: 2 15 11 7 3 16 12 8 4 0 13 9 5 1 14 10 6 7: 3 16 12 8 4 0 13 9 5 1 14 10 6 2 15 11 7 8: 4 0 13 9 5 1 14 10 6 2 15 11 7 3 16 12 8 9: 5 1 14 10 6 2 15 11 7 3 16 12 8 4 0 13 9 10: 6 2 15 11 7 3 16 12 8 4 0 13 9 5 1 14 10 11: 7 3 16 12 8 4 0 13 9 5 1 14 10 6 2 15 11 12: 8 4 0 13 9 5 1 14 10 6 2 15 11 7 3 16 12 13: 9 5 1 14 10 6 2 15 11 7 3 16 12 8 4 0 13 14: 10 6 2 15 11 7 3 16 12 8 4 0 13 9 5 1 14 15: 11 7 3 16 12 8 4 0 13 9 5 1 14 10 6 2 15 16: 12 8 4 0 13 9 5 1 14 10 6 2 15 11 7 3 16