Pole o dvou dimenzich-beginer
K.Rezler
kresler na infini.com
Pátek Listopad 1 16:59:10 MET 2002
Mnohokrat diky. Jen mi neni jasne proc je to takto "slozite".
Preci jen v jinych jazycich jsou vetsinou dvoudimenzionalni pole
syntakticky srozumitelna.
DEkuji za venovany cas.
"rootmj" <rootmj na seznam.cz> píse v diskusním príspevku
news:aps94n$jrb$1 na news.vutbr.cz...
> Kdyz jsem zacinal s Perle, tak tohle byla jedna z veci ktera mi taky
> delala problemy. Ani jinak skvela kniha pana Satrapy mi v tomhle nebyla
> moc napomocna. Doporucuji nezapominat na 'use strict;',pouzivat notaci
> '->' a nevzdavat to.
>
> use strict;
>
> # pole
> my @jed = ( 1, 2, 3 );
> print $jed[0]."\n";
>
> # odkaz na pole
> my $ra_jed = \@jed;
> # nebo
> # $ra_jed = [ 1, 2, 3 ];
> print $ra_jed->[0]."\n";
>
> # mene prehledne varianty NEdoporucuji
> #print $$ra_jed[0]."\n";
> #print ${$ra_jed}[0]."\n";
> print "\n";
>
>
> # pole s odkazy na nekolik poli
> my @pole = (
> [ 1, 2, 3 ],
> [ 4, 5, 6 ],
> [ 7, 8, 9 ]
> );
> # nebo
> # @pole = ( \@jed, [ 4, 5, 6], [ 7, 8, 9] );
> # @pole = ( $ra_jed, [ 4, 5, 6], [ 7, 8, 9] );
> # @pole = ( [ @jed ], [ 4, 5, 6], [ 7, 8, 9] );
> print "\@jed\n";
> print $pole[0]->[0]." - ".$pole[0]->[1]." - ".$pole[0]->[2]."\n";
>
> # mene prehledne varianty NEdoporucuji
> #print $pole[0][0]." - ".$pole[0][1]." - ".$pole[0][2]."\n";
> #print ${$pole[0]}[0]." - ".${$pole[0]}[1]." - ".${$pole[0]}[2]."\n";
> #print ${$pole[0]}[0]." - ".${$pole[0]}[1]." - ".${$pole[0]}[2]."\n";
> print "\n";
>
> my @sub_pole = @{$pole[0]};
> print $sub_pole[0]." - ".$sub_pole[1]." - ".$sub_pole[2]."\n";
>
> my $ra_sub_pole = $pole[0];
> print $ra_sub_pole->[0]." - ".$ra_sub_pole->[1]." -
> ".$ra_sub_pole->[2]."\n";
> print "\n";
>
>
> # odkaz na pole s odkazy na nekolik poli
> my $ra_pole = \@pole;
> # nebo
> # odkaz na pole s odkazy na nekolik poli
> # $ra_pole = [ [ 1, 2, 3], [ 4, 5, 6], [ 7, 8, 9] ];
>
> print "\$ra_jed\n";
> print $ra_pole->[0]->[0]." - ".$ra_pole->[0]->[1]." -
> ".$ra_pole->[0]->[2]."\n";
>
> my @sub_poleb = @{$ra_pole->[0]};
> # @sub_poleb = @{$$ra_pole[0]};
> # @sub_poleb = @{${$ra_pole}[0]};
> @sub_poleb = @{$ra_pole->[0]};
> print $sub_poleb[0]." - ".$sub_poleb[1]." - ".$sub_poleb[2]."\n";
>
> # mene prehledne varianty NEdoporucuji
> #print $ra_pole->[0][0]." - ".$ra_pole->[0][1]." -
".$ra_pole->[0][2]."\n";
> #print $$ra_pole[0][0]." - ".$$ra_pole[0][1]." - ".$$ra_pole[0][2]."\n";
> #print ${$ra_pole}[0][0]." - ".${$ra_pole}[0][1]." -
> ".${$ra_pole}[0][2]."\n";
> #print ${$ra_pole}[0]->[0]." - ".${$ra_pole}[0]->[1]." -
> ".${$ra_pole}[0]->[2]."\n";
> print "\n";
>
>
> print \@pole."\n";
> print "@pole\n";
> print "$ra_pole\n";
> print "@{$ra_pole}\n";
> print "\n";
>
> print "$pole[0]\n";
> print "@{$pole[0]}\n";
> print "$ra_pole->[0]\n";
> print "@{$ra_pole->[0]}\n";
> print "\n";
>
>
> K.Rezler wrote:
>
> > Dobry den.
> > Pokousel jsem se pouzit v Perlu dvourozmerne pole
> > A(X,Y) ale pravdepodobne se vytvari jinak. Nenasel jsem
> > v dokumentaci jak to provest ?
> > Potrebuji nacist seznam prvku z nich kazdy ma krome hodnoty tez index
> > radek
> > a sloupec.
> > Tento seznam pak potrebuji tisknou dle indexu radek a sloupec.
> >
> > DEkuji
>
>
>
> --
> ------------------------------
> S pozdravem Michal Jurosz
> rootmj na seznam.cz ICQ#:93348414
> http://mjhome.zde.cz
> ------------------------------
>
Další informace o konferenci Perl