v8perl

v8.perl

Perl dilinde

#!/usr/bin/perl

@m=(1,1,1,1,1,1,1,1,1);

$n=0;

$i=1;

l100: if ($i>1)

{$d=0;

for ($a=$i-1;$a>0;--$a)

{if ($m[$i]==$m[$a]) {goto l210;}

$d++;

if ($m[$i]+$d==$m[$a]) {goto l210;}

if ($m[$i]-$d==$m[$a]) {goto l210;} }

}

if (++$i==9) {++$n;

print("$n a$m[1] b$m[2] c$m[3] d$m[4] e$m[5] f$m[6] g$m[7] h$m[8]\n");

goto l240;}

goto l100;

l210: if (++$m[$i]<9) {goto l100;}

$m[$i]=1;

l240: if (--$i>0) {goto l210;}

die ("There are $n solutions as shown\n");