Code:
#!/usr/bin/perl
open (ULAZ, "matrica.txt"); #otvaram fajl
while (<ULAZ>){ #dok ima fajla, radim sledecu stvar
chomp; # pogledaj dokumentaciju koja je razlika izmedju chop i chomp
($i,$j,$v) = split(/ /); # u promeljive i, j i v sam stavio tri procitane vrednosti (pogledaj dokumetaciju za split)
$a[$i][$j] = $v; #u matricu stavljam vrednost za prvi-drugi cvor
$a[$j][$i] = $v; #to isto za drugi-prvi
}
$d = @a; #prebrojim koliko ima cvorova
for ($i = 0; $i < $d; $i++){
for ($j = 0; $j< $d; $j++){ #dvostruka petlja da prodje kroz celu matricu
if (defined $a[$i][$j]){ #ako je neki element matrice definisan, onda ga ispisemo
print $a[$i][$j];
}
else { #ako nije definisan, onda je tu 0
print "0";
}
print "\t"; #nakon svakog ispisanog elementa stavimo jedan tab, da lepse izgleda
}
print "\n"; #nakon svakog reda, jedan novi red
}
Eto ti kod sa sve komentarima. Krajnje jednostavno. Jedino mozda malo zbunjujuce je ovo sa defined, mada, to mozes da izbegnes ako pre nego krenes da popunjavas matricu, prvo celu matricu popunis nulama jos jednom dvostrukom petljom. Sve ostalo su osnove.
Mogao bi da kazes i koju knjigu koristis za ucenje perla, ili sta vec koristis.
JaFreelancer.com