RosettaCodeData/Task/Identity-matrix/Perl/identity-matrix.pl
Ingy döt Net db842d013d A-M baby
2013-04-10 21:29:02 -07:00

18 lines
313 B
Perl

sub identity_matrix {
my $n = shift;
map {
my $i = $_;
[ map { ($_ == $i) - 0 } 1 .. $n ]
} 1 .. $n;
}
@ARGV = (4, 5, 6) unless @ARGV;
for (@ARGV) {
my @id = identity_matrix $_;
print "$_:\n";
for (my $i=0; $i<@id; ++$i) {
print join ' ', @{$id[$i]}, "\n";
}
print "\n";
}