use strict heißt, daß du deine Variablen vor ihrem ersten Verwenden initialisieren mußt (hilft gegen spätere Rechtschreibfehler).
#!/usr/bin/perl
use CGI::Carp qw(fatalsToBrowser);
use strict;
my $conttype = "Content-type: text/html\n\n";
&info;
sub info{
print $conttype;
print "<html><body>\n";
print "Hello World ohne Fehler;-)\n";
print "</body></html>\n";
}
sub z{if(@_){1while$x[$k=rand 10];t($t=$x[$k]=1)}print map"$z[$x[$_]]$_".($_%3?
"":"\n"),1..9}sub t{$j=0;$x[$_+1]==$t&&($j+=2**$_)for 0..8;z,die"Gewinner $z[$t]
"if grep$_==($j&$_),7,56,73,84,146,273,292,448;z,die"Gleichstand\n"if@x>9&&!grep
!$_,@x}@x=4;@z=qw{. [ (};z$^T&1;while(<>){next if$_>9||$x[$_];t$t=$x[$_]=2;z 1}