Uvod - Zasto uciti Perl ? - webpretraga.

com

http://webpretraga.com/perl/perl-brzi-prirucnik/perl-tutorial.html

Uvod - Zasto uciti Perl ?
Sazetak: Kada sam poceo sa Perl-om, najveci problem je bio odluciti se koju literaturu koristiti. Iz tog razloga u ovom prirucniku su izbacene nepotrebne stvari koje zamaraju citaoca i fokus je na sustini i opipljivim rezultatima odmah.

Sta je uopste Perl ?
Perl je razlog zasto cete zavolete programiranje :) Perl je star. Njegova izdrzljivost i postojanost na trzistu je samo jedan od dokaza koliko je ovaj jezik koristan generacijam programera i sistem administratora sirom sveta. Autor Perl-a je Larry Wall. Perl je "zvanicno" rodjen 1987 godine na UNIX sistemima i sluzio je kao zamena za shell jezike (sh), AWK i sed. Tada je Larry radio na poverljivim projektima gde su racunari "ozbiljne" namene bili povezani kriptovanom vezom. Dobio je zadatak da osmisli centralizovan sistem konfiguracije i izvestavanja i tako se poceo razvijati Perl. Obratite paznju - Perl je programski jezik, koji je prevashodno sluzio sistem administratorima - to treba dosta da vam govori. Ako su vam skracenice AWK, sed, sh strane - nema problema. U sustini, Perl je preuzeo mogucnosti veoma napradne obrade teksta iz tih jezika i interakcije sa operativnim sistemom. Nemojte da vas ovo sad zamara, naucicete kasnije.

Da li je Perl tezak za ucenje ?
Ako ste programirali do sada - ne. Jedina stvar kod Perl-a koji moze da vas oznoji su regularni izrazi. Medjutim - u tome je i osnovna snaga Perl-a. Ako ste ikad radili sa sed-om, Perl je implementirao i te mogucnost, tako da bi ste trebali biti poznatoj teritoriju. Ako niste programirali do sada - zavisi. Zasto "zavisi" ? Moram da vam kazem nesto. Postoje programski jezici koji se na prvi pogled - lakse uce. Obratite paznju, rekao sam - na prvi pogled. U cemu je fora ? Fora je u tome sto uz te programski jezike, "novije generacije" dobijete uglavnom neki interpreter (bez njega se source ne moze izvrsavati), dobijete "editor", tutorijale i ostale stvari. I vi sada mislite da ce vam biti lakse jer ste dobili sve na tacni. E pa nije bas. To sto je u pocetku lakse, na kraju se obije od glavu, jer vas stavi u mentalni sklop da ce uvek biti nekog da vam sve poturi na tacni kad vam zatreba u ptogramiranju. Lakoca u ucenju ima svoju cenu kasnije. Perl nije komplikovan za ucenje. Istina potrebno je sesti, odvojiti vreme, definisati ciljeve i poceti raditi. Perl i programiranje se ne uci samo citanjem dobre knjige. Potrebno je jednostavno sesti i poceti kuckati source. Greske u programiranju - su najbolja stvar koja moze da vam se desi. U pocetku ce ih biti mnogo, bice mnogo i nedoumica. Kasnije cete ih zavolete - jer ce vas uvek nauciti nesto novo i kvalitetnije.

Gde i za sta se upotrebljava Perl ?
Perl mozete upotrebljavati za: Masovnu obradu tekstualnih i HTML stranica (bukvalno milione). Sistem administraciju Mrezno programiranje Web programiranje CGI Programiranje Interakcije za bazama podataka Dopisati po potrebi :) Perl se moze upotrebljavati u svim oblastima informatike, za najrazlicitije zadatke. Od bioinformatike do finansija. Osnovno pitanje ovde je - sta konkretno vama treba ? Naravno, postoje neke stvari za koje se drugi programski jezici jednostavno namecu kao prirodnije/logicnije resenje. Da bi

1 of 61

26.12.2011 11:13

Uvod - Zasto uciti Perl ? - webpretraga.com

http://webpretraga.com/perl/perl-brzi-prirucnik/perl-tutorial.html

ste dosli do stadijuma kada prepoznajete kada je sta prikladnije potrebno je - vreme.

Kako citati Perl prirucnik ?
Sazetak: Odluciti kako nesto uciti je bitnije nego sto mislite.

Kako pratiti ovaj "kurs" ?
Ucenje programiranja nije citanje romana. Bicu potpuno iskren. Nema nikakvog smisla da nastavite sa citanjem ovih stranica ako se ne pridrzavate redosleda pogotovo ako se prvi put susrecete sa programiranjem. Neko ce reci: "Sta je njemu, vecina vlasnika sajtova zeli da mu se citaju tekstovi ?" Ovde i jeste najveca razlika. Da, ja nemam nista protiv da citate moje tekstove, zato sam i napravio sajt, medjutim, poenta je da kada zavrsite sa citanjem nekog teksta znate nesto sto mozete da upotrebite sutra za licnu korist. Kao neko ko je samouk programer, i ko je protracio dosta vremena citajuci kojekakve tutorijale na Internetu sada imam dovoljno izkustva da znam sta je dobro i sta je lose, tj. sta se moze preskociti, a sta se jednostavno mora znati. Ovaj prirucnik, ili "kurs", nazovite ga kako hoce ima samo jedan cilj. Taj cilj jeste da kada zavrsite sa citanjem, znate osnove programiranja u Perl-u, i sto je jos bitnije, da znate kako i sta dalje da radite u zavisnosti od vasih interesovanje. Postoji sansa da vam se Perl svidja. Bilo bi mi veoma drago da je tako. To bi znacilo da ste na pravom putu da ovladate jednim programskim jezikom na koga uvek mozete racunati. Postoji sansa da vam se Perl ne svidja. I to je ok. Mozda vam je blizi neki drugi programski jezik, mozda jos niste definisali sta vam treba. Mozda samo probate malo PHP-a, malo HTML-a, malo Perl-a ili nekog drugog programskog jezika. Nemojte misliti da nisam probao mnoge druge jezike, izmedju ostalog dosta sam se zadrzao na PHP-u i Python-u. Zapravo, sa Python-a sa presao na Perl. Zasto? Sato sto sam nakon citanja par stvari o Perl-u mogao konacno da napravim par programa koji su mi zadavali glavobolju. Ne sporim, moguce ih je bilo napraviti i uz pomoc drugih jezika, ali ono za sta mi je u drugim jezicima bilo nemoguce, to sam napravio u Perl-u za jedno popodne. Zato, molim vas, ako vec ucite Perl, idite jednu lekciju po jednu, nemojte da preskacete redosled, samo cete se pogubiti i mozda odustati jer cete misliti : "ma ne mogu ja ovo". Da, trebace vam koji sat da zavrsite ovaj online kurs, ali bolje i to nego da protracite dane citajuci kojekakve razbacane tutorijale na Internetu. Trudio sam se da smisleno organizujem i pojednostavnim ovaj prirucnik, nadam se da cete to iskoristiti.

Perl na Windows-u ( 1. deo )
Sazetak: Kako instalirati Perl na Windows. Detaljno uputstvo. [ Nabavka. ]

Kako i Gde nabaviti Perl za Windows ?
Ukoliko koristite Windows, ili iz nekog razloga ne zelite zakoraciti u svet UNIX-olokih sistema, postoji par resenja. Jedno od resenja je instalacija Active State Perl-a. Da budem iskren, ne bi bilo lose bar da probate neki od Linux, a pogotovo BSD sistema. Ipak, Perl je nastao na UNIX-u, te (bar meni) programiranje u Perl-u na OpenBSD sistemu izgleda nekako "prirodnije". Da se vratimo na Instalaciju Perl-a. Potrebno je da odete na Perl-ov zvanicni sajt http://perl.org. Mozete to i da odradite preko trazilice:

2 of 61

26.12.2011 11:13

Uvod - Zasto uciti Perl ? - webpretraga.com

http://webpretraga.com/perl/perl-brzi-prirucnik/perl-tutorial.html

Korak 1 - Nalazimo zvanicni Perl-ov sajt.

Korak 2 - Nasli smo sajt, idemo na download opcije.

3 of 61

26.12.2011 11:13

Uvod .2011 11:13 .12. Korak 4 .html Korak 3 .Biramo ActiveState Perl 4 of 61 26.U ovom slucaju. biramo Windows.com/perl/perl-brzi-prirucnik/perl-tutorial.webpretraga.Zasto uciti Perl ? .com http://webpretraga.

ActiveState Perl Instalacija) Sazetak: Kako instalirati ActiveState Perl na Windows.12.webpretraga.com http://webpretraga. Perl na Windows-u ( 2.2011 11:13 .Fajl je velicine oko 27MB. ] ActiveState Perl Instalacija Da bi ste nastavili sa citanjem teksta potrebno je da na racunar imate snimljen ActiveState perl Instalacioni fajl.Zasto uciti Perl ? . Zapamtite gde ste ga snimili.com/perl/perl-brzi-prirucnik/perl-tutorial. Korak 6 .Uvod .html Korak 5 . Potrebno je da pokrenemo instalacioni fajl: 5 of 61 26. Detaljno uputstvo.Biramo x86 verziju. To smo uradili u prethodnoj lekciji. deo . [ Instalacija.

com http://webpretraga.2011 11:13 .Uvod .html Korak 1 .Pokrenimo instalaciju. Korak 2 . Instalacija ce biti obavljena u direktorijum "c:\Perl".Prihvatamo Ugovor.com/perl/perl-brzi-prirucnik/perl-tutorial.12.Zasto uciti Perl ? .webpretraga. 6 of 61 26.

Idemo na Next.Uvod . Korak 4 .com/perl/perl-brzi-prirucnik/perl-tutorial.webpretraga.Zasto uciti Perl ? .com http://webpretraga.12.2011 11:13 . 7 of 61 26.html Korak 3 .Idemo na Next.

2011 11:13 .Kliknem o na Install. Korak 7 .Sacekamo koji minut dok se fajlovi i dokumentacija ne raspodele na disk.12.webpretraga.html Korak 5 . Sada moramo proveriti uspesnos instalacije Perl-a na Windows.com http://webpretraga.Zavrsavamo instalaciju na Finish. 8 of 61 26. Idemo na START > RUN.Zasto uciti Perl ? . download perl-a sa zvanicnog sajta Korak 6 . Ukucamo "cmd" i kliknemo na OK.Uvod .com/perl/perl-brzi-prirucnik/perl-tutorial.

"DOS" je spreman za unos komandi. Zapamtite gde ste ga snimili.com/perl/perl-brzi-prirucnik/perl-tutorial. Hajde da proverimo koja je verzija Perl-a u pitanju.webpretraga.Zasto uciti Perl ? . zatim "cd perl".Nista bez DOS-a :) Korak 9 . 9 of 61 26. Unosimo komandu "perl -v".Fajl je velicine oko 27MB.html Korak 8 . Sada idemo u direktorijum gde smo intalirali Perl. Kucamo prvo "c: \".com http://webpretraga.2011 11:13 .12. Ako smo sve uradili kako treba sada smo u direktorijum "c:\Perl".Uvod . Korak 10 .

pl.Snimite ovaj source u fajl hello.webpretraga. "\n". "Provera Perl Instalacije\n". Listanje sadrzaja aktiviramo komandom starom dobrom DOS komandom "dir".Uvod .Potreban nam je fajl hello.pl. print print print print print "########################\n". Korak 13 .com/perl/perl-brzi-prirucnik/perl-tutorial.pl u direktorijum "c:\Perl". Korak 12 .html Korak 11 . 10 of 61 26. "########################\n". "\n".2011 11:13 .com http://webpretraga.Zasto uciti Perl ? . Snimite ga u direktorijum "c:\Perl". Otvorite Notepad ili neki drugi editor koji koristite i prekopirajte sledeci source-kod u fajl hello.12.Dosli smo u Perl direktorijum. Da vidimo sta ima u direktorijumu "c:\Perl".

Provera Perl Instalacije je obavljena.12. U cemu pisati source ? Sazetak: Postoji mnogo programa za pisanje source-a. Da skratim pricu. Ako Perl nemate.html. i probajte OpenBSD. pogotovo ako nisu radili u njemu. brzo podesava. sasvim je izvesno da cete imati punu podrsku za Perl.Zasto uciti Perl ? . Koristite komandu "perl -v" u vasem terminalu da bi proverili Perl instalaciju.pl i pritisnete ENTER.webpretraga. Konkretno autor ovog teksta najvise voli da radi na OpenBSD sistemu. Perl je instaliran i sve radi kako treba.com http://webpretraga. Neki su besplatni.org/get. a ponekad i Notepad. ucinite uslugu sebi. ali to je stvarno nezahvalno reci. Perl na Unix i slicnim sistemima Sazetak: Unix i slicni sistemi.perl. Koji editor da odaberem za programiranje ? Postoji gomila programa za pisanje sorce-a.html Ako dobijete sledeci rezultat kada otkucate hello. Za sada nema potreba da se zamarate odlukom o tome koji cete editor da koristite. sto je najbitnije. U pocetku se drzite najjednostavnijih. radite na cudnom sistemu :) Perl mozete skinuti sa sledece adrese: http://www. Perl i BSD/Unix/Linux Ukoliko koristite neki od UNIX ili Linux sistema. 11 of 61 26. Brzo se instalira. drugi kostaju poprilicno. Korak 14 .Sve je ok.Uvod . tj. su prirodna baza za rad u Perl-u. Neki ga smatraju "teskim". da je Perl vec instaliran kod vas. samo pocnite da programirate :) Ja licno koristim Edit Plus na Windows-u.com/perl/perl-brzi-prirucnik/perl-tutorial.2011 11:13 . moze da radi na starijim masinama i radi stabilno.

12. Ali pre svega .Uvod . 2. a ne da uradite copy > paste.neka bude jednostavno i neka ima opciju syntax highlighting. Rekli smo da cemo program snimati u "c:\Perl". nego ono sto se copy > paste-uje.poenta je da pisete source vi. Pojavi se "DOS" Odemo u "c:\Perl" (komandom "cd Perl") kucamo pozdrav. Pre ili kasnije trebace vam Vi. Nisam neuro-ekspert. ili nesto drugacije ? Gotovo je postao standard u ucenju programiranja da prvi program izpisuje na ekran "Hello World".com/perl/perl-brzi-prirucnik/perl-tutorial. Nakon snimanja programa.com http://webpretraga. 4. Sta god da odaberete u pocetku .. bojenja source-a kako bi ste se lakse snasli u gomili cudnih znakova :) Prvi Perl Program Sazetak: Ako napisete ovaj program. No.. 3. 1.webpretraga. Prvi Jednostavan Perl Program Otvorite editor koji koriste i u njemu napisite sledece. tj.pl. #!/usr/bin/perl print "Hello World\n". napisali ste sve ostale :) Hello World. 5.pl . Svojevremeno sam na Linux-u koristio Kate. pritisnemo ENTER. i izvrsite ga. Idemo na START > RUN Ukucamo "cmd".Zasto uciti Perl ? . pokusajte da ga pokrenete otvaranjem "DOS-a". Hajde da ispostujemo standard. Bez obzira na tip operativnog sistema koji koriste. svi programi u sledecim lekcijama bi trebali raditi bez problema.html Na OpenBSD sistemu koristim skoro uvek August. npr : pozdrav. trebalo bi da dobijete sledeci rezultat: 12 of 61 26. pritisnemo ENTER Ukoliko ste sve uradili kako treba. mozda je to samo moj mozak.2011 11:13 . Ako koriste Windows. ali mi se cini iz sopstvenog iskustva da se u nasu memoriju znatno brze smesta ono sto se proprati motoricki. snimite prethodni source u neki fajl.

Zasto uciti Perl ? . \n". a ne sve recenice jedna do druge :) 13 of 61 26. Mozete ubaciti koja god hocete slova i brojeve izmedju navodnika.html Za vas koji koriste UNIX i slicne sitema. Hello World . Onda ide uvek u vrh programa. pa mozete koristi i ovo: $ chmod a+x pozdrav Kad zavrsite sa prethodnim komandama kojima vas program postaje "izvrsiv". to nije problem. pokusajte program pokrenuti sa: $ .ovo je neki tekst koji se stampa. jednostavno shebang linija je standard. Ona govori sistemu u kom ste programskom jeziku pisali source.12.2011 11:13 ./pozdrav Analiza programa Da se vratimo na: #!/usr/bin/perl print "Hello World\n". Unix-oliki sistemi automatski prepoznaju sta treba da rade. #!/usr/bin/perl . O njima kasnije.pl .com/perl/perl-brzi-prirucnik/perl-tutorial.ovo je Perl-ova komanda kojom se stampa tekst na ekran.ovo je takozvana "shebang" linija. ako program nece da se pokrene. Tu nista nema za dodati i oduzeti. probajte sa komandom: $ chmod a+x pozdrav. print .Uvod . . Postoji jos mnogo komandi za razne namene. Ovo "\n" je komanda za prelazak u novi red tako da tekst bude u linijama.pl Ukoliko niste snimili program sa ekstenzijom .webpretraga.com http://webpretraga.se stavlja na kraju komande obavezno.

pritisnemo ENTER. pritisnemo ENTER Trebalo bi da dobijete sledeci rezultat: 14 of 61 26. zadajemo komandu za prikaz na monitoru . 5. 2. "453524343523\n". Sada unosimo drugu recenicu. Sada definisemo samo prazan red pomocu "\n". print "\n". na kraju recenice): #!/usr/bin/perl print "Ovo je prva recenica\n".webpretraga. 2. Hajde sada da: 1. 3. "Ovo je druga recenica\n".2011 11:13 . Idemo na START > RUN Ukucamo "cmd".print. #Ovo sto vidite ovde #Su komentari source-a #Koje pisu Programeri da bi se prisetili sutra sta su pisali juce :) #Komentari pocinju sa znakom # Snimite ovaj program kao redovi. kao i \n. i komandom "cd Perl") kucamo redovi. 3.com/perl/perl-brzi-prirucnik/perl-tutorial. zajedno sa recenicom pod navodnicima (navodnici su obavezni. prazan red. 4. naucili smo osnove "stampanja" na ekran. Pojavi se "DOS" Odemo u "c:\Perl" (komandom "cd \".Zasto uciti Perl ? . #!/usr/bin/perl print "Ovo je prva recenica\n". jedan ispod drugog Ok.pl. "\n".Uvod . i neke brojeve po izboru: #!/usr/bin/perl print print print print print "Ovo je prva recenica\n".pl u "C:\Perl". Odstampamo recenicu Odstampamo prazan red :) Odstampamo neku drugu recenicu Odstampamo prazan red Odstampamo neki broj Potrebno je da u "vrh" programa unesemo shebang liniju: #!/usr/bin/perl Zatim. "\n". i idemo da ga pokrenemo: 1.12. 4.html Stampanje vise redova. 5.com http://webpretraga.

ali je potrebno da znate par osnovnih stvari kao sto su: 1. Pokretanje "DOS-a" pod Windows-om Bez obzira sto smo u prethodnim lekcijama prosli kroz ovo. ako nista drugo. Prebacivanje u folder iznad foldera u kome ste sad ( vracanje nazad ) Prebacivanje u jezgro hard-diska. 7..com http://webpretraga. 4.webpretraga. ( a i b su flopi diskovi ) Ulazak u neki folder Listanje sadrzaja foldera Potraga za odredjenim tipom fajlova Potraga za odredjenim fajlom Pokretanje programa Za sve ovo sto sledi nece vam trebati vise od par minuta. zato obratite paznju i dobro savladajte materiju. cak i ako ste sledili uputstva iz instalacije ActiveState Perl-a. Trebace vam i za programiranje u drugim programskim jezicima. hajde da ponovimo jos jednom: Idemo na START . Graficki programi i kliktanje misa ce doci kasnije. tj dolazak do c:. 2. Niko od vas ne trazi da znate DOS u detalje.html Pokretanje Perl programa pod Windows-om ? Sazetak: Program se pokrece tastaturom za sada.com/perl/perl-brzi-prirucnik/perl-tutorial. i tako dalje.12. 5. Taj Famozni "DOS" Mislim da nekolici vas dugujem par objasnjenja. ili d:. pa idemo na opciju RUN (run = pokreni neki program) : 15 of 61 26. Ukoliko ste imali problema kod pokretanje Perl programa iz prethodnih lekcija. ali je realnost takva da ne mozete ozbiljno da pridjete programiranju na Windows-u ako ne poznajete bar osnovne DOS komande.2011 11:13 .Uvod . ili e:. Verovatno vam se ne svidja ideja da u doba brzih racunara ucite DOS. 6.Zasto uciti Perl ? . 3. moguce je da vam ta DOS stvar nije potpuno jasna.

Zasto uciti Perl ? . 16 of 61 26. pa pritisnemo ENTER ili kliknemo na OK. Svaku komandu zavrsavate pritiskom ENTER-a.com/perl/perl-brzi-prirucnik/perl-tutorial.webpretraga.Uvod . sve je u redu i mozete zadavati komande preko tastature.12. Ukoliko vam se otvori sledeci DOS prozor.html Zatim kucamo komandu cmd ili command.2011 11:13 .com http://webpretraga.

To mozete ostvariti komandom "cd \" ( cd kosa crta ). razlika je samo u razmaku. Prebacivanje u jezgro hard-diska.2011 11:13 . tj.html Prebacivanje u folder iznad foldera u kome ste sad ( vracanje nazad ) Postoji dva nacina da se vratite u folder nazad. Prva komanda za vracanje nazad je "cd. dolazak do c: Postoji jos jedan nacin da dodjete u "root".". Naravno. Koristimo komandu "cd Perl".Zasto uciti Perl ? . pa pritisnemo ENTER. tj.. Ulazak u neki folder Posto smo Perl instalirali u folder c:\Perl potrebno je da udjemo u taj folder.com/perl/perl-brzi-prirucnik/perl-tutorial. "cd . samo sa razmakom izmedju cd i tacaka. jezgro hard-diska.webpretraga." (cd pa tacka tacka) Druga komanda je ista. 17 of 61 26.12. tj. Veoma su slicni.. nakon komandi pritisnete ENTER.com http://webpretraga.Uvod .

Zasto uciti Perl ? . Naravno. nakon komande pritiskamo ENTER.2011 11:13 .html Listanje sadrzaja foldera Da bi saznali sta imamo u folderu. Potraga za odredjenim tipom fajlova Recimo. a trebaju nam fajlovi odredjene ekstenzije.com/perl/perl-brzi-prirucnik/perl-tutorial. pa tacka.exe". kao sto tekstualni fajlovi imaju ekstenziju ". trebaju nam svi Perl fajlovi. nakon koje pritiskamo ENTER.txt" a izvrsni fajlovi imaju ekstenziju ".tip" fajla (zvezdica. koristicemo DOS komandu "dir". imamo veliki broj fajlova i foldera u nekom folderu. tipa. Perl fajlovi imaju ekstenziju ". Na primer.com" ili ".webpretraga. 18 of 61 26.com http://webpretraga. tj.Uvod . pa tip fajla koji nam treba).12.pl". Koristicemo komandu "dir *.

Na primer.Zasto uciti Perl ? . tj. i pokrenete ga ? Ako ne mozete. Sve ce doci na svoje mesto nakon izvesnog vremena.com/perl/perl-brzi-prirucnik/perl-tutorial. Pitanje za vas: Mozete li sada.Uvod . pa pritisnemo ENTER. Prosto. ili prvih par slova.12. Kucamo "dir h*" . napisete neki mali Perl programcic koji stampa neke redove. imamo rezultat. redovi. Potraga za odredjenim fajlom Sta se desava ako nam treba fajl kome znamo samo prvo slovo.pl. to provo slovo. Dobro ste uocili. koristicemo komandu "dir". po secanju. ali i folder (direktorijum) html. da uradite sve prethodno od pocetka. odete u folder Perl. nasli smo fajl hello. i zvezdicu. kako bi sutradan imali sta staviti u CV ili zaraditi pare od programiranja.html Kao sto vidite. nema veze. Potrebno je samo da vi zelite nauciti Perl ili neki drugi jezik.webpretraga. samo se secamo da fajl pocinje slovom "h". Nasa memorija zavisi od mnogo faktora.pl. do toga koliko ste motivisani. Brojevi u Perl-u Sazetak: 19 of 61 26.pl.2011 11:13 . Samo opusteno. od toga koliko ste umorni. pozdrav.com http://webpretraga. Nasli smo Perl fajlove: hello.pl.

Vase je da to iskoristite najbolje.6. ako vam je mrsko tumaciti.webpretraga.A.2011 11:13 . nemojte da se opterecujete ovim.22e13 # minus 4. Kako Perl "vidi" Brojeve ? U Perlu mozete pisati brojeve na sledeci nacin (pokretni zarez): 4. ako vam bude trebalo.html Brojevi i Perl se odlicno slazu. koga vec znate. To je binarni sistem (nule i jedinice). heksadekadni sistem (0.D.22 puta 10 na 13 -4.0 4. Ponavljam. ako vam bude trebalo.0 #jeste 200 10 / 2 #jeste 5 20 of 61 26. naucicete.4 + 3 # jeste 5.E. implementirano je u Perl na ovaj ili onaj nacin. Celobrojne vrednosti 12 54 -43 -28 4874 -2546 1845267221 Prethodni broj.com/perl/perl-brzi-prirucnik/perl-tutorial. trebace vam dekadni sistem.1.C. da postoje i drugi numericki sistemi sem onog koga se sluzimo svakodnevno.0 * 40 #jeste 200 5.F) i oktalni sistem.2 # jeste 3 2.Zasto uciti Perl ? .22 puta 10 na 13 -5e-12 # minus 5 puta 10 na minus 12 -5E-12 #isto kao prethodno Ne zamarajte se matematikom ako vam nije jaca strana.9.0 #jeste 200 5.3. mozete napisati i kao 1_845_267_221 Nedekadne vrednosti Verovatno ste culi.12 125 125.4. U vecini slucajeva. bar sto se racunara tice.7.Uvod .4 5 * 40 # jeste 200 5 * 40.8.5.2.B. Da vidimo osnovne operacije: 5 + 6 # pet plus sest je jedanaest 5 .12.com http://webpretraga. Operacija nad brojevima Sve sto vam treba za racunanje. Numericke Operacije u Perl-u Sazetak: Osnovne operacije u Perl-u se moraju znati. Internet je pun informacija.0 * 40.22e13 #4.

"5 * 40. 5. a ostaje 1 do 10.0 * 40.2.com http://webpretraga. "\n". "\n".2 = ".0 * 40.0 = ". "10 % 3 = ". "\n". #!/usr/bin/perl print print print print print print print print print print print print print print print print print print "5 + 6 = ". ~*~ 21 of 61 26. 5 * 40.Uvod . "\n".0 = ".com/perl/perl-brzi-prirucnik/perl-tutorial. "5. 5 + 6.0. "\n". "\n". "\n". "\n". "\n". "\n". onda je modulo 1 :) Perl i Brojevi u Praksi Hajde da prethodne racunske operacije proverimo u Perl-u. "\n". 5 * 40.4 + 3.pl i snimiti ga u "c:\Perl". "10 / 2 = ". "\n". "5 * 40 = ". Napisacemo mali program brojanica. 5 . po obicaju. "\n". "\n". "\n". "5. 10 % 3. "\n". 5. Modulo je ostatak deljenja a posto je 10 : 3 = 3. 10 / 2. nego modulo.12. "5 .0 * 40.4 + 3 = ".0 * 40 = ".2011 11:13 . "\n".html 10 % 3 # jeste 1 Ovo zadnje sto smo naveli nije postotak. "\n". "2.Zasto uciti Perl ? .0.webpretraga. 2.

imaju zadatak da Perl-u pokazu pocetak i kraj nekog znakovnog niza.html ~*~ Idemo na sledecu lekciju.webpretraga. Perl je tu da se uhvati u kostac sa onim racunskim radnjama koje mu zadate. o brojevima i konverzijama se za sada ne brinite. ne zaboravite da na Windows-u imate kalkulator sa opciom Scientific za kompleksnija izracunavanja.com/perl/perl-brzi-prirucnik/perl-tutorial.12. ili polunavodnici. vase je samo da znate kako da definisete zadatak. Napomena: Ako vam nekad bude trebalo.jednostruki navodnici Sazetak: Jednostruke navodnike u Perl-u koristite kod pocetka i kraja znakovnog niza. Oni sami po sebi nisu deo znakovnog niza. Znakovni nizovi .2011 11:13 . 22 of 61 26.com http://webpretraga.Zasto uciti Perl ? . Obrat\' paznju Jednostruki navodnici.Uvod . samo sluze kao pokazivaci.

#!/usr/bin/perl print print print print print print print print 'ovo je znakovni niz' . "\n". postoji znatna razlika izmedju znakovnih nizova sa jednostrukim i znakovnih nizova sa dvostrukim navodnicima. tj. folder. Napomena: Ova tacka izmedju znakovnog niza i "\n". "\n". sluzi da spoji ta dva u jednu komandu. program cemo snimiti kao jednostruki.com/perl/perl-brzi-prirucnik/perl-tutorial. 'stavite ispred njega kosu crtu.Uvod . 'ovo su brojevi u znakovnom nizu 4 3 1 2 3 451. eneki od njih su: \L \l #Prebacuje sva slova u niska #prebacuje sledece slovo u nisko 23 of 61 26. da bi prikazal\' jednostruki navodnik. 'i ovo je' . \'vako. specijalne znake. znaci.12. "\n".html Da ne bi puno teoretisali. Znakovni nizovi . "\n". 'jer mozete napravit\' pometnju ako ubacite vise jednostrukih navodnika' . "\n".dvostruki navodnici Sazetak: Dvostruke navodnike u Perl-u cete najvise upotrebljavati kod rada sa tekstom koristeci.pl u "c:\Perl" direktorijum.22' 'obratite paznju na grama\'tku' 'jer mozete napravit\' pometnju ako ubacite vise jednostrukih navodnika' 'unutar znakovnog niza' 'znaci.. "\n".webpretraga. evo par primera : 'ovo je znakovni niz' 'i ovo je' 'ovo su brojevi u znakovnom nizu 4 3 1 2 3 451. videcete da je u source-u koristen "\n". da bi prikazal\' jednostruki navodnik.' . u znakovnom nizu' 'stavite ispred njega kosu crtu. u znakovnom nizu' .com http://webpretraga. 'unutar znakovnog niza' . po potrebi. Razlika Postoji Da. "\n".22' . "\n". Ako ste obratili paznju na prethodnu lekciju o jednostrukim navodnicima. radi se o specijalnom znaku. Postoje mnogi specijalni znaci koji imaju posebno znacenje kada se ubace pod dvostruke navodnike. \'vako' A evo i source-a za gore-navedeno.2011 11:13 . 'znaci.Zasto uciti Perl ? . 'obratite paznju na grama\'tku' .

"ali pre toga malo\trazmaka\n". "mi sasvim dobro ide" . "\n".Zasto uciti Perl ? . Trebali bi da dobijete sledeci rezultat: 24 of 61 26. Jedna od najcescih operacije nad nizovima je nadovezivanje." A moze i ovako: "Ja Ucim Perl. ". Napisacemo mali Perl programcic "nizovi." .12." A moze i ovako: 'Ja Ucim Perl. lol\n". "i za sada mi sasvim dobro ide. 'i za sada ' . potrebno je da koristimo operator ". u "C:\Perl". Rad sa Znakovnim Nizovima Sazetak: Prosirivanje recenica u Perl-u je lakse nego sto mislite.pl print "Ja " ." Idemo sad da to prebacimo u source. da vidimo kako se zvoni na interne zvucnike pomocu Perl-a :) #!usr/bin/perl #Snimite program kao zvonjava.pl u "c:\Perl" print print print print print "zvonjava sledi\n". "i za sada mi sasvim dobro ide.com/perl/perl-brzi-prirucnik/perl-tutorial. print 'Ja Ucim Perl.pl". Na primer. i za sada mi sasvim dobro ide. "\n". i stavicemo ga tamo gde smo i do sada stavljali nase pocetne programe." "Ja " . "\n". ' .com http://webpretraga. " . ". "i za sada mi sasvim dobro ide. " . 'i za sada ' . " . print "Ja Ucim Perl. #!/usr/bin/perl #Snimite program kao nizovi.2011 11:13 . "\n"." .webpretraga. ". "Ucim Perl" ." (tacku)." . "\a\t\a\t\a\t\a\t\a\t\a\t\n". ' . gle cuda :) #Razmice za jedan "Tab" #Zvono #Predstavlja kraj komande kada se koristi \L ili \U Na primer. hajde da spojimo recenicu: "Ja ucim Perl. "Ucim Perl" . i u Perl-u postoji mogucnost upotrebe razlicitih operatora nad znakovnim nizovima. ". Da bi nadovezali jedan niz na drugi.html \U \u \n \t \a \E #Prebacuje sva slova u visoka #Prebacuje sledece slovo u visoko #Zapocinje novu liniju. "mi sasvim dobro ide" . " . ili na engleskom "concatenate".Uvod . "i za sada mi sasvim dobro ide. "a i posle. Nadovezivanje znakovnih nizova Kao i kod vecine ozbiljnih programskih jezika.

2011 11:13 . "\n". print "a ovo 3 " x 3 . skrenuti paznju da smo nesto zabrljali. "ovo ce se ponoviti 2 puta " x 2 "a ovo 3 " x 3 4 x 12 #rezultat je 444444444444 Napisacemo mali programcic "ponavljanje.pl": #!/usr/bin/perl #Snimite program kao ponavljanje.Zasto uciti Perl ? . koliko je to moguce. koristicete operator "x". izaci u susret pre nego sto napisete finalnu verziju programa. niti pocetnika koji sve zna. u Perl-u postoje ugradjena upozorenja koja ce nam. koliko je to moguce. "\n". Na svu srecu.webpretraga. 25 of 61 26. sa desne strane. Kod mene to izgleda ovako: Perl Ugradjena Upozorenja Sazetak: Perl ce vam. jedan do drugog. i da napravi tacno onoliko kopija koliko navedite u brojevima. Da bi to uradili u Perl-u. samo vezbajte sa nekom svojom kracom recenicom. "\n". Bitno je znati.Uvod . da navedeni operator.pl print "ovo ce se ponoviti 2 puta " x 2 . print 4 x 12 . Operator Ponavljanja ( x ) Pre ili kasnije zatrebace vam vise istih znakovnih nizova.12. Kako Perl pomaze ? Nema programera koji nije napravio gresku. uzima ono sto mu je sa leve strane. Mozete cak i povezivati slova u rec. za pocetak.com/perl/perl-brzi-prirucnik/perl-tutorial.html Napomena: Ako ste se malo zbunili sa ovoliko tackica za povezivanje reci.com http://webpretraga.

pogotovo ako se zaposlite u firmi u kojoj su pravila striktnija. Pragma diagnostics zahteva nesto vise memorije.12. Na primer. Ovo zadnje moze da vam znaci kraj fajla.2011 11:13 . tj.prilikom pokretanja programa iz terminala. te da u samom programu aktiviramo upozorenja to mozemo uraditi kada u source-u pored shebang linije dopisemo sledece: #!/usr/bin/perl -w Neke novije verzije Perl-a koriste takozvane Pragme. tezi da se drzi do onoga sto je jednostavno i logicno. $ perl -w neki_program A ako hocemo da izbegnemo kucanje u terminalu. sablonu. samo vama znanom. #!/usr/bin/perl use diagnostics. ako u samom programu nismo aktivirali opciju za upozorenja. ljudima ce biti mnogo lakse da razumeju sta ste hteli reci. $ perl -Mdiagnostics . a tada koristimo Pragmu diagnostics. Pragma za upozorenja se aktivira ovako: #!/usr/bin/perl use warnings. dajte vasim promenjivama smislena i logicna imena cije znacenje odmah shvatate i posle duzeg vremena. ili $krafa. Davanje Imena Promenjivama Sazetak: Drzite se jednostavnih imena. ipak je mozete koristiti prilikom pokretanja programa. Smanjite mogucnosti za greske odabirom razumljivih imena za promenljive. moze vam biti zanimljivo da promenjivama davate imena kao sto su $a. Kada 26 of 61 26. sa komandne linije. Prvi nacin je prilikom pokretanja naseg programa. ukoliko budete delili vase programe pod slobodnim licencama. manje vise. Ponekad se desi da su nam potrebna detaljnija objasnjenja./neki_program Da pojasnimo. Pravila Dobre Prakse Kada programirate. moze vam se desiti da za promenjive birate imena po nekom. da bi izbegli konfuziju.com/perl/perl-brzi-prirucnik/perl-tutorial. ako vam nekad zatreba.Zasto uciti Perl ? . Upozorenja koja smo aktivirali dobro dodju programerima koji. da i cete se i vi sami posle par meseci. Kako Dodeliti Vrednost Promenljivoj ? Perl.. i stekli dobre navike. zato sto za vas unapred sprema duze objasnjenje ukoliko dodje do greske.html Postoji vise nacina kako mozemo reci Perl-u da nas obavestava ako nesto nije u redu. ceskati po glavi pitajuci se sta vam neka promenjiva znaci u nekom vecem programu. (znam sta pricam.) Ukratko. Samo upotrebljavajte znak jednakosti. a "-Mdiagnostics" nam priprema dokumentaciju ako nesto ne valja .com http://webpretraga. Problem nastaje kada vam to predje u naviku. pogotovo ako cinite prve korake. znaju sta rade. opekao sam se. Komanda "perl" sluzi da bi izvrsili neki_program.webpretraga. Dodeljivanje Vrednosti Promenljivama Sazetak: Dodeljivanje vrednosti je lako. ili $sistem.Uvod .. Pa zasto onda jednostavno ne biste promenjivoj i dali takvo ime ? Sasvim je izvesno. Ne samo to. kao i svi ozbiljni i dokazani u praksi programski jezici. pogotovo kod vasih prvih programa u Perl-u. Ukoliko ne zelite Pragmu diagnostics u svom programu.

2011 11:13 . "\n". $prezime. Perl i usteda u pisanju U programiranju se cesto desava da jednostavno zelite neke izraze. tj: "=". "\n". print print print print print print print print print $ime. Dobre stvari iz drugih programskih jezika su i ovde nasle mesto.pl" i snimiti u "c:\Perl".pl $ime = "Larry".html zelite dodeliti neku vrednost promenljivoj. $broj_neki = 34. treba da dobijete sledece : Binarno Dodeljivanje Sazetak: U Perl-u se vodilo racuna o ustedi vremena. Ako ste sve otkucali kako treba.webpretraga. $ime = "Larry" $prezime = "Wall" $malo_duze_ime_promenljive = "Nekad moze biti korisno i ovako" $broj_neki = 34 $broj_veci = $broj_neki + 6 A evo i programa koji ce isprintati na ekran vrednosti promenljivih : #!/usr/bin/perl # Snimite program kao dodeljivanje. koga cemo nazvati "dodeljivanje. $broj_neki. pa makar to bilo i pisanjem 27 of 61 26. "\n". tj.Uvod . $malo_duze_ime_promenljive.com http://webpretraga. zatim znak jednakosti.Zasto uciti Perl ? . Bitno je znati da kada dodeljujete vrednost. $broj_veci = $broj_neki + 6.com/perl/perl-brzi-prirucnik/perl-tutorial. operacije pojednostaviti. $broj_veci. zatim vrednost promenljive sa desne strane. prvo pisete promenljivu. upotrebicete znak jednakosti.12. $malo_duze_ime_promenljive = "Nekad moze biti korisno i ovako". $prezime = "Wall". Znaci sablon izgleda ovako: $neka_promenljiva = vrednost promenljive Hajde da vidimo kako to izgleda u praksi. "\n". Koristicemo sledece promenjive da napisemo source programa.

Zasto uciti Perl ? . print "\n".Uvod .pl $ime = "Larry". sto vise prakse budete imali.webpretraga. $ime . Sto se operatora binarnog dodeljivanja tice.12. u smislu da program ne izbacuje nikakve poruke na ekran dok radi. i para dvostukih navodnika. i nazvati ga: "usteda. print $ime.2011 11:13 . Prikazivanje Izlaznih Podataka U pocetku vase programerske karijere moze vam se desiti da napisete program koji perfektno radi a da za to samo vi znate.com http://webpretraga. medjutim. oni u pocetku mogu izgledati zagonetno. Rezultat je sledeci : Prikazivanje Teksta Sazetak: Prikazivanje teksta na monitoru i stampacu je stvar jednog "print"-a. sem sabiranja isti princip mozete primeniti na ostale osnovne matematicke operacije. "pa ova recenica" je isto sto i : $neka_rec .pl": #!/usr/bin/perl # Snimite program kao usteda. Naravno. ili kada zavrsi ono sto se od njega trazi. 28 of 61 26. print $ime. koje daju isti rezultat.".= "pa ova recenica" Napisacemo i mali programcic. je isto sto i: $neki_broj += 455. Radi se o definisanju promenljivih: $neki_broj = $neki_broj + 455. Ono sto sledi je primer dve razlicite komande.com/perl/perl-brzi-prirucnik/perl-tutorial. Osim matematickih operacija. i kod sastavljanja znakovnih nizova imamo istu proceduru : $neka_rec = $neka_rec .html manjeg broja komandi. sve cete biti zahvalniji sto postoje i takve "precice" prilikom pisanja programa.= " je faca.

$drugi_deo. $drugi_deo = "programiranje je uvek lako.webpretraga.2011 11:13 . ". jer se izvestavanje.12.Perl i za to ima resenje. $recenica = $prvi_deo . Kod mene to izgleda ovako: 29 of 61 26. za sada uvek snimajte vase programe u jedan folder ( bar dok citate ovaj "kurs" ). kako sto smo se dogovorili :) #!/usr/bin/perl # Snimite program kao umetanje. ce vam se cesto desavati. Budite disciplinovani. print $recenica . da vidimo kako to u praksi izgleda. ". Ovde necemo uciti nikakve nove komande.com http://webpretraga. Perl Znakovni Nizovi i Njihove Kombinacije Dobra stvar kod operacija sa znakovnim nizovima jeste sto mozete kombinovati svaki njihov deo. pa cemo ih ubaciti u neku recenicu. Naravno. Definisacemo dve promenljive. Bitno je samo da zapamtite da ako vec pisete neki program.com/perl/perl-brzi-prirucnik/perl-tutorial.pl $prvi_deo = "Ovo je prvi deo. koja je u stvari promenljiva. prati sistemsko zdravlje i desavanja na mrezama koje odrzavate. "\n". Iz tog razloga je potrebno da umecete u program bar opcije za osnovno izvestavanje.html Ovo ce vam se verovatno desiti ako se bavite sistem administracijom pa napisete mali program u Perl-u koji prebacuje fajlove. a to je "print". ( $prvi_deo i $drugi_deo ). No da se ne bi gubili u preteranoj teoriji i cudnim izrazima. "Uz Perl ". pravi arhivu. To sto vi u trenutku pisanja programa znate sta on radi. tj.Zasto uciti Perl ? . ne znaci da cete se i setiti posle godinu dana sta ste hteli da kazete.Uvod . ispis poruka na ekran vrsi komandom kojom ste do sada dobro upoznati. i davajte im smislena imena. onda ga pisite tako da u svakom trenutku znate sta on radi. ali da li preterujete i ne znacete posle par stotina napisanih programcica :) Umetanje Skalara u Znakovne Nizove Sazetak: Ako vam zatreba umetanje reci ili recenica u vec postojecu . ne treba preterivati. Umetanje jedne reci u recenicu na mestu neke druge reci.

upotrebljavaju se standardni operatori (logical comparison operators) i to: <. znamo da to nije tacno.Zasto uciti Perl ? . sto smo radili u skoli. to znaci da je 5 jednako 5. imamo sledecu tablicu: 30 of 61 26. tj. netacno.com http://webpretraga. Rezultat poredjenja dva broja moze biti Tacan ili Netacan. Dakle. sto je zasigurno tacno. ukoliko kazemo da je 5 == 5. Sto se poredjenja brojeva tice. Dakle. True ili False. pitanje je sad. Isto tako. Nema nesto narocito svrhe porediti neka dva broja ako nam to ne koristi u daljem izvrsavanju programa. Moguce je izvrsiti poredjenje izmedju brojeva.webpretraga. ako kazemo da je 4 > 4. Na vama je da odlucite sta cete posle.12. i poredjenje izmedju znakovnih nizova. imamo True. !=. imamo False slucaj.Uvod .2011 11:13 . istinit slucaj. Kako to? Na primer. >=.com/perl/perl-brzi-prirucnik/perl-tutorial. Poredjenje: True ili False Postoje dva tipa poredjenja. posto 4 ne moze biti vece od 4.html Operatori Poredjenja Sazetak: Rezultat poredjenja moze biti True ili False. Da vidimo kako izgleda tablica za poredjenje brojeva: Poredjenje Operator Jednako == Vece > Manje < Vece ili Jednako >= Manje ili Jednako <= Nije Jednako != Ako govorimo o poredjenju znakovnih nizova. ==. <=.

Ali.12. } Posle par pokretanja programa.not equal Ulaz sa Tastature Sazetak: Unos elemenata sa tastature je krajnje pojednostavljen.com http://webpretraga. Upotreba operatora "<STDIN>" u Perl-u je veoma jednostavna.great or equal Manje ili Jednako le . ako je broj manji od 5. Svodi se na definisanje promenljive u koju se pomocu <STDIN>-a stavlja ono sto je krajnji korisnik otkucao preko tastature.less or equal Nije Jednako ne .greater Manje lt . if ($neki_broj < 5) { print "manji od 5".equal Vece gt . ili jednak 5.webpretraga.Uvod .less then Vece ili Jednako ge . bar sto se Perl-a tice. Sta cete raditi sa tom promenljivom je vasa stvar. Korisnicki Unos Stvari ce tek postati zanimljive kada naucite koristiti operator "<STDIN>". } if ($neki_broj >= 5) { print "Perl je extra programski jezik". program ce reci "Perl je extra programski jezik.2011 11:13 . $neki_broj = <STDIN>. lepo je znati da je u Perl-u prihvatanje korisnickog unosa krajnje pojednostavljeno i logicno.com/perl/perl-brzi-prirucnik/perl-tutorial. Definisacemo promenljivu $neki_broj.html Poredjenje Operator Jednako eq . i ukucavanje nekih brojeva. program ce izbaciti poruku "manji od 5". tako da kada unesemo neki broj sa tastature. #!/usr/bin/perl #Snimite program kao unos." Koristicemo takodje upravljacku strukturu "if". a ako je broj veci.pl print "Unesite neki broj pa pritisnite ENTER\n". Da vidimo kako se koristi Perl operator <STDIN> u praksi. kod mene to izgleda ovako: 31 of 61 26.Zasto uciti Perl ? .

Uvod . koliko je to moguce. a trebalo bi da jesu jer sam ih maksimalno pojednostavio. $moja_recenica = <STDIN>. Operator Chomp Sazetak: Ponekad je potrebno "odseci" oznaku za novi red kada unosimo podatke za obradu u programu.000 mailova dnevno pingate konstantno neki racunar sve dok se ta masina ne zagusi od ping zahteva (kada radite bezbednosne testove na mrezi) Generisete neke html stranice do odredjenog broja. chomp($moja_recenica = <STDIN>).com/perl/perl-brzi-prirucnik/perl-tutorial. da vidimo gde bi mogli upotrebiti while (mozda u paketu sa ostalim upravljackim strukturama Perl-a): Stampate na ekran neki red dok se taj red ne odstampa. samo se strpite malo. Koristicete while kada zelite da se nesto u programu izvrsava veci broj puta sve dok je ispunjen uslov koji ste vi odredili. medjutim. #!/usr/bin/perl print "Unesite neku recenicu pa pritisnite ENTER\n". recimo. Sve ce doci na svoje mesto vremenom. po odredjenom kriterijumu 32 of 61 26. ali je sasvim izvesno da je struktura while. Prethodni programcic ste mogli napisati i kao: #!/usr/bin/perl print "Unesite neku recenicu pa pritisnite ENTER\n". ocigledne primere zahteva koje bi stavili pred svoj program. Kao sto vidite. Ponavljanje izvrsavanja dela programa Mozda je nezahvalno odvajati upravljacke strukture jednu od drugih. To nam moze napraviti problem. pa Perl ima operator chomp kojim uklanja oznaku za novi red (\n).2011 11:13 . U svakom slucaju.html Mozete slobodno da budete zadovoljni svojim dosadasnjim ucinkom ako su vam sve lekcije jasne. Ostavite donosenje zakljucaka za kasnije. Recimo da zelimo definisati neki promenjivu. ostaje vam ono "\n". te da ne vidite gde bi ga mogli upotrebiti. Naravno. to je samo zbog toga sto hocu da maksimalno pojednostavim ceo koncept.webpretraga. jedna od najkorisnijih takozvanih "petlji" u programiranju. Saljete automatski mail nekome dok ne posaljete 10. Perl vam uvek ostavlja opciju da stedite dragoceno vreme. Mozda imate utisak da operator chomp nije nesto narocito koristan. pa cemo koristi "chomp". koju cemo nazvati $moja_recenica i koja se unosi sa tastature Perl operatorom <STDIN>. Uklanjanje oznake za novi red Perl operator <STDIN> je zaista korisna stvar.com http://webpretraga.12.Zasto uciti Perl ? . Pokusacu vam dati par primera gde bi mogli upotrebiti "while". Upravljacka struktura while Sazetak: Koristite "while" kada znate sta se treba izvrsavati veci broj puta. on se ne bavi uklanjanjem zadnjeg dela unosa sa tastature kada pritisnete ENTER. No da ne duljim preterano. tj. Videcete koliko je chomp koristan. navodeci. Zatim cemo nad tom recenicom upotrebiti chomp da neutralisemo oznaku za novi red. Jos nesto. dok su ispunjeni postavljeni uslovi. cak i da vam nesto nije jasno. bez obzira sto ga vi ne kucate. nema problema. 100 puta. chomp($moja_recenica).

.com/perl/perl-brzi-prirucnik/perl-tutorial. 33 of 61 26. } To bi trebalo da izgleda ovako: Funkcija defined Sazetak: U odredjenom broju slucajeva. Koristite "defined".. Da bi proverili da li je promenljiva definisana.com http://webpretraga. pa kreni dalje. $recenica = <STDIN>. ili citanjem odredjengo fajla. $odbrojavanje = 0. while ($odbrojavanje < 20) { $odbrojavanje = $odbrojavanje + 1.pl print "Napisite bilo koju recenicu pa pritisnite ENTER\n". zavisi od vas.webpretraga.Uvod .Zasto uciti Perl ? . Definisi. koristicete Perl funkciju defined na sledeci nacin: #!/usr/bin/perl #snimite program kao defined.2011 11:13 . print $recenica. koji treba da vam priblizi razloge za upotrebu te upravljacke strukture u vasim programima. #!/usr/bin/perl #Snimite program kao while. No. apsolutno morate znati sta je definisano. Ovo je samo mali deo onoga sto mozete uraditi uz pomoc while-a.i mnogi drugi primeri. mozda ce vam drugi operatori i komande mnogo vise koristiti.12. Ponekad vam se u programiranju moze desiti da vam je apsolutno neophodno da je neka promenljiva odredjena. Sto se nekog jednostavnog programcica tice. a recenicu cemo uneti preko tastature. hajde da na ekran stampamo neku rec onoliko puta koliko to navedemo u promenljivoj koju cemo nazvati "$odbrojavanje".pl i pokrenite ga da vidite #sta se desava. Ograniceni ste samo mastom.html vrsite upis u neku bazu podataka dok broj redova po tabeli ne predje odredjeni broj . manje je bitno. kod unosa parametara u program. Opet. a sta ne. To da li ce promenljiva biti odredjena korisnickim unosom preko tastature. o tome cete vec vi odluciti u zavisnosti od toga sta vam bude trebalo i kako vise volite da pristupite programiranju. Vazno je samo to da nesto mora biti definisano da bi se ostatak programskog kod-a mogao izvrsiti.

"Some Dude". uneto je $vazna_promenljiva".12. koristite specijalnu oznaku "@" za pravljenje liste. } Liste u Perl-u Sazetak: Ako imate kriterijum za odredjenu skupinu podataka. print "jer niste definisali promenljivu unosom preko tastature\n". } else { print "Program nece nastaviti izvrsavanje\n". 4.com http://webpretraga. 9) @lista_imena = ("John". pa pritisnite ENTER \n". To je. 6. Nemojte sada da razmisljate o tome u opste. sada cemo ga koristiti nevezano na mail kontekst.Uvod . 8. naravno.html print "Unesite nesto preko tastature. "Georg".Zasto uciti Perl ? . Definisanje Liste u Perl-u Liste u Perl-u su jednostavno skupovi nekih podataka sortirani po odredjenom kriterijumu. 5. sasvim normalno dok ne steknete rutinu. Mozda ce se neko i zapitati: "Kako je to moguce da Perl definise kriteriju koji mi u trenutku nisu poznati ?" Pravo stanje stvari je da cete u pocetku mnoge stvari prevideti zbog nedostatka iskustva. if ( defined($vazna_promenljiva) ) { print "promenljiva je definisana.2011 11:13 . a to je simbol "@". Evo nekih primera za nazive liste u Perl-u: @nekaLista @lista_imena @klijenti_ekspozitura23 Posto smo naucili kako davati imena listama. $vazna_promenljiva = <STDIN>.webpretraga. 289) Redosled u Perl listama Ukoliko zelite dobiti nesto sa odredjene pozicije u listama. 4323. 7. to cete uraditi ovako (koristicemo prethodne primere) : 34 of 61 26. Perl ce uvek definisat neki kriterijum. Cak i kada budete pravili prve liste. da vidimo kako definisati clanove liste: @lista_brojeva = (3. "Michael".com/perl/perl-brzi-prirucnik/perl-tutorial. Da bi ste definisali listu u Perl-u koristice specijalan simbol sa kojim ste se do sad sigurno susretali kada ste slali mail-ove. za koje ne znate koji je poredak podataka u njima. "Patrick") @lista_mesana = ("Nick". Doci se samo po sebi. Naravno.

jednostavno stvari su takve kakve jesu i za sada odlicno funkcionisu..pl : #!/usr/bin/perl #snimite program kao liste.$b). @lista_brojeva = (3.5. "\n"..50). 289). @lista_mesana. " Patrick"). 10). Mozda jeste cudno. Takodje. 9 i 10 @lista_3 = ($a. "\n". U realnom zivotu ne mozete nekom kusur vracati tako sto cete zanemariti prvu novcanicu koju dajete nekome (0-ulta. @lista_imena[0].Zasto uciti Perl ? . Sada da napravimo listu u koju cemo ubaciti neke elemente. print print print print print print print print print print print @kombinovana_lista.Uvod . "\n". @lista_2 = (0. "\n". 10). @lista_brojeva[3].com http://webpretraga.2011 11:13 . 3. Bar kada se govori o pozicijama elemenata neke liste. 7. 8. #svi brojevi izmedju 1 i 50 @lista_2 = (0. " Some Dude". kada se govori o listama (tj. @kombinovana_lista = (1.html print print print print print "Iz prve liste 2 element\n". #opseg definisan pomocu promenljivih Hajde da nesto od prethodnih primera slozimo u programcic liste. @lista_mesana = (" Nick". ali u programiranju to ide tako. pa hajde da to primenimo. "Iz druge liste prvo ime\n". 9). ne zamarajte se ovime. 2. pozicijama) uvek "brojite" od nule. "\n". $neka_promenljiva = 43 + 23. @lista_1 = (1. @lista_1. 6. na primer. @lista_brojeva. $jos_jedna_promenljiva ) Opsezi i liste Liste je moguce napraviti bez nesto preterano kucanja.12. 3. mozete definisati gomilu brojeva na brzinu: @lista_1 = (1. pocetna novcanica).. Rezultat programa je kod mene sledeci: 35 of 61 26. ali cete se naviknuti. @lista_imena. $jos_jedna_promenljiva ). #brojevi su 0. 1. Kao sto vidite. @lista_imena = (" John". u programiranju. " Michael".com/perl/perl-brzi-prirucnik/perl-tutorial. $jos_jedna_promenljiva = "John Smith". Iz prethodnih lekcija smo naucili kako definisati promenljive. 9. 5. $neka_promenljiva. To nije nista cudno. " Georg". 2. 1 do 5. @lista_2. 4323. 1-5. "\n". 4.pl $neka_promenljiva = 43 + 23. $jos_jedna_promenljiva = " John Smith".50). ali i gornje promenljive: @kombinovana_lista = (1.. Ako bi ste pak zeleli da saznate zasto se u programiranju broji od nule u nekim slucajevima probajte sa unosom sledeceg stringa na vasoj omiljenoj trazilici: "Why do programmers count from zero ?" Promenljive i Liste Moze vam se desiti nekad da ce vam trebati neka promenljiva u listi.webpretraga. 9. $neka_promenljiva.

Precica qw .Zasto uciti Perl ? .Perl Liste na Laksi Nacin Da bi ste razumeli ovu lekciju potrebno je da ste procitali lekciju o listama u Perl-u. Dakle.com/perl/perl-brzi-prirucnik/perl-tutorial. da cete obicne zagrade upotrebiti za nesto drugo u programu. liste mozete definisati na brzinu i pomocu sledecih znakova : !. RegExp-i mogu da vas namuce u pocetku. Sasvim je izvesno da ce vam i regular expression-si priskociti u pomoc :) Necu da vam ulepsavam.com http://webpretraga.2011 11:13 . Ako bi prethodni primer zeleli napisati pomocu precice qw. < . Da se podsetimo kako smo definisali liste tako sto cemo napraviti listu sa nekim licima : @imena = ("John". ali se to kasnije i te kako isplati . to bi izgledalo ovako: @imena = qw(John Mark Sebastian Vinona Smith) Ako vam se desi. a verovatno hoce.Uvod .webpretraga. "Smith") Da li vas je zamorilo kucanje navodnika? Ukoliko jeste. [. navedenu listu sa imenima mozemo napraviti i ovako: @imena @imena @imena @imena @imena = = = = = qw[John qw{John qw!John qw qw#John Mark Sebastian Vinona Smith] Mark Sebastian Vinona Smith} Mark Sebastian Vinona Smith! Mark Sebastian Vinona Smith# Operator pop Sazetak: Operator "pop" koristicete kada "skidate" nesto sa kraja liste. @. "Sebastian". "Vinona".12.od obrade teksta do izvlacenja onoga sto vam je potrebno iz baza podataka. {. Ovo ce vam narocito koristiti kada budete radili obradu veceg broja tekstualnih fajlova ili web stranica. stedite vreme koristeci "qw". 36 of 61 26. "Mark". koristite precicu qw koja olaksava pravljenje liste.html Precica qw Sazetak: Kod pravljenja listi u Perl-u.

Zasto uciti Perl ? . Da li cete ga brisati. "sa liste je skinut \"$zadnji\": \n". Bitno je da postoji operator pop kojim vrsite uklanjanje zadnjeg elementa neke liste.10). koji se nalazi na kraju liste.com/perl/perl-brzi-prirucnik/perl-tutorial. Ako to ubacimo u neki programcic.html Uzimam sa kraja reda. ali i da ga prebacimo u neku promenljivu koju cemo kasnije negde iskoristiti . "lista sada izgleda ovako: \n".10). @brojevi. ili upisivati u drugu listu .sasvim je nebitno. to ide ovako: $zadnji = pop(@brojevi). To sta cete uraditi sa tim elementom liste je vasa stvar.pl @brojevi = (1. mozemo definisati listu @brojevi u koju cemo smestiti sve brojeve od 1 do 10: @brojevi = (1.. ili koristiti za neku drugu aktivnost . lista @brojevi sada je umanjena za jedan (zadnji) broj.. print print print print "\n".Uvod . Kada definisete neku listu moze vam se desiti da sa elementom te liste. A rezultat izgleda ovako: Operator push Sazetak: Operator "push" koristicete kod "stavljanja" nekog elementa na kraj liste.12. koja je sortiana po nekom kriterijumu (a uvek jeste).. Na primer. Ako hocemo da uklonimo zadnji broj 10.webpretraga.com http://webpretraga. $zadnji = pop(@brojevi).2011 11:13 .. zelite uraditi nesto. @brojevi. imamo sledece: #!/usr/bin/perl #snimite program kao pop. 37 of 61 26. print "osnovna lista sadrzi: " .

@brojevi. koji smo napisali. Koristeci operator push..pl @brojevi = (1.com/perl/perl-brzi-prirucnik/perl-tutorial. push @brojevi. A ako napravite dodatnu listu sa brojevima od 20 do 30.30). 11). 11). Kada pokrenete mali programcic push. Kada sve napisete u formi malog programcica.Zasto uciti Perl ? . @dodatak. @brojevi. napravicemo prvo listu sa nekim brojevima: @brojevi = (1. to izgleda ovako: #!/usr/bin/perl #snimite program kao push. kasnije u programima.pl.30)..html Dodavanje na kraj reda Koristili smo Perl operator pop kada smo uzimali element sa kraja reda i koristili ga za nesto.10). 12. #sad ubacujemo brojeve od 20 do 30 @dodatak = (20. print "\n". @brojevi.com http://webpretraga. Mozda ce neki to zeleti da urade bez zagrada. print "Nakon upotrebe operastora push za 11 i 12:". push(@brojevi. Da bi to uradili koristicemo Perl operator "push". push @brojevi. 12.12. dodajuci broj 12: push @brojevi. dodacemo broj 11 u listu.Uvod . print "Nakon dodatka. Sada nam treba da dodamo element na kraj reda. print "\n". Kao i u primeru o operatoru pop.. imamo sledecu listu brojeva: ". dobijete sledece : 38 of 61 26. @dodatak.webpretraga.2011 11:13 .. push @brojevi.10). ovako: push(@brojevi. to ide ovako: @dodatak = (20. print "lista @brojevi sad sadrzi: ".

Uvod - Zasto uciti Perl ? - webpretraga.com

http://webpretraga.com/perl/perl-brzi-prirucnik/perl-tutorial.html

Operatori shift/unshift
Sazetak: Shift i Unshift se odnosi na operacije sa elementom na pocetku liste. Shift "uzima" element, unshift "stavlja" element na pocetak liste.

Aktivnosti na Pocetku Perl Liste
Rekli smo da cemo koristiti Perl operator pop kada treba da skinemo neki element u listi i upotrebimo ga znesto. Takodje, operator push smo koristili da umetnemo element na kraj niza. Sta se desava kada treba da operisemo sa elementima, ali na pocetku liste, tj. niza elemenata ? Upotreblavacemo operatore shift i unshift. Operatorom shift uzimamo neki element liste sa pocetka, a operatorom unshift ubacujemo element u postojecu listu. Prvo da napravimo neku listu sa imenima:
@imena = qw(John Michael Nick);

Recimo da nam treba za nesto izdvojen element "ime", a uzecemo ga sa pocetka liste.
$ime = shift(@imena);

Sada lista @imena sadrzi samo imena Michael i Nick, a element $ime je John. Jos jednom:
$ime = shift(@imena);

Sada lista @imena sadrzi ime Nick. Dosta oduzimanja sa pocetka liste. Hajde da neko ime i dodamo na pocetak.
unshift(@imena, "Patrick"); unshift(@imena, "Alex");

Ako to sve sklopimo u mali program, imamo sledece:
#!/usr/bin/perl #snimite program kao shift.pl @imena = qw(John Michael Nick); print "promenljivoj \"ime\" dodeljujemo element sa pocetka reda \n"; $ime = shift(@imena); print "promenljivoj je dodeljena vrednost: ", $ime; print "\n"; print "Pa opet\n"; print "promenljivoj \"ime\" dodeljujemo element sa pocetka reda reda\n"; $ime = shift(@imena); print "promenljivoj je dodeljena vrednost: ", $ime; print "\n"; print "A sada ubacujemo imena na pocetak liste: \n"; unshift(@imena, "Patrick"); unshift(@imena, "Alex"); print "Lista imena sada izgleda ovako:", @imena;

Kada se pokrene programcic shift.pl, dobijemo sledece:

39 of 61

26.12.2011 11:13

Uvod - Zasto uciti Perl ? - webpretraga.com

http://webpretraga.com/perl/perl-brzi-prirucnik/perl-tutorial.html

Upravljacka struktura foreach
Sazetak: Koristicete "foreach" u Perl-u kada zelite nesto uraditi nad svim elementima liste.

Trcanje kroz Perl Listu
U koliko zelite da na nekim elementima jedne liste zelite izvrsiti istu operaciju, mozete koristiti upravljacku strukturu foreach. Karakteristika upravljacke strukture foreach jeste da prolazi kroz listu, te da po zadatim ketirrijumima izvrsava neke operacije. Ako definisemo neku listu sa brojevima, a zelimo da za svaki broj istampamo: "Ovo je broj: x", onda bi se to moglo ovako napisati:
#!/usr/bin/perl @brojevi = (1..10); foreach $broj ( @brojevi ) { print "Ovo je broj: $broj.\n"; }

40 of 61

26.12.2011 11:13

Uvod - Zasto uciti Perl ? - webpretraga.com

http://webpretraga.com/perl/perl-brzi-prirucnik/perl-tutorial.html

Hajde da prosirimo programcic. Recimo, da na svaki broj u listi dodamo 5:
#!/usr/bin/perl @brojevi = (1..10); foreach $broj ( @brojevi ) { print "Na broj $broj, dodali smo 5", $broj += 5; }

Mozda naslucujete, mozda ne, ali mozete uraditi gomilu korisnih stvari sa upravljackom strukturom foreach. Ako vam nista ne pada na pamet, ili ako vam je Perl prvi programski jezik, logicno je da cete dobijati ideje malo kasnije. Da bi covek uspesno programirano, potrebno je da akumulira mnogo znanja o racunarima i operativnim sistemima generalno, a tek nakon uvida u mogucnosti programskih jezika, otvoricete sasvim novo polje u radu sa racunarima. Mogao bih se kladiti da cete biti zaprepasteni sta ce vam za izvesno vreme padati na pamet, kada se otisnete u svet pisanja programa za posebne namene :)

Podrazumevana Promenljiva: $_
Sazetak: Perl skracuje vreme za pisanje programa i cini program jednostavnijim upotrebom podrazumevane promenljive, oznake "$_".

Podrazumevano, a Korisno.
Secate se kada smo na pocetku ovog Perl kursa rekli da cete zavoleti programiranje ? Dame i gospodo, dobro dosli u lekciju o podrazumevanoj promenljivoj u Perl-u, cija je oznaka "$_", naravno, bez navodnika. Verovatno cete vremenom nekgde cuti ili procitati da su ljudi koji vole programirati u Perl-u posebna vrsta zverki. E pa, bili su u pravu. Postojanje podrazumevane promenjive $_ sluzi Perl programerima da skrati vreme za kucanje, a sasvim izvesno, i da nas oslobodi muka smisljanja naziva za razno-razne promenljive koje bismo inace morali definisati da programiramo u drugim programskim jezicima. Mozda cete se zapitati: "A kako to da smisljanje naziva za promenljive dosadi ?". Odgovor je veoma prost - probajte napisati neki veci program, od recimo 5000 redova koda, cak i sa komentarima. Sta mislite koliko ce vam se puta desiti da na vise mesta budete u iskusenju dati isto ime za neke slicne promenljive, gde

41 of 61

26.12.2011 11:13

Medjutim. a ne na programersku birokratiju :) Operator reverse Sazetak: Ponekad je potrebno da elemente jedne liste poredjamo "unatraske". } Navedeni source je tacan. i kada mu kazete da je nesto slicno necemu drugom. Oznovni zadatak operatora reverse je da neke vrednosti iz liste postavi u obrnutom redosledu. racunar i program koji pisete radi ono sto mu vi kazete. } if ($neki_broj >= 5) { print "Perl je extra programski jezik". Na primer. Racunar jednostavno ne zna da razmislja kao programer. Jednostavno. Za racunar je jedna promenljiva jedna. koju smo mi definisali. mozemo ga i skratiti upotrebom podrazumevane promenljive. if ($neki_broj < 5) { print "manji od 5". bicete vise usredsredjeni na resavanje samog zadatka.12. Prvo cemo napisati program sa nekom promenljivom. racunaru ne znaci nista. vama ce to biti smesno. Kada budete naucili jos posebnih oznaka u Perl-u postoji sansa da ce vas ostali programeri (koji rade u drugim jezicima) cudno gledati.Zasto uciti Perl ? . vi cete sve to resavati mnogo brze.100 ). u realnosti. bez obzira sto im vi iz nekog razloga date slicna imena. to za njega ne znaci nista.. To sto se vama nesto cini slicno.com/perl/perl-brzi-prirucnik/perl-tutorial.com http://webpretraga. Hajde da vidimo sta to "podrazumevana promenljiva" znaci na sledecem primeru. Zapamtite. Neka to bude ulaz sa tastature: #!/usr/bin/perl print "Unesite neki broj pa pritisnite ENTER\n". i dodelili neku vrednost. predstavlja apsolutnu razliku. da se vratimo promenljivoj "$_". } Moguce je da vam se sada cini da source programa koji pisete polako pocinje da lici na neki spijunski kriptovan dokument. if ($_ < 5) { print "manji od 5". print @brojevi. A to sto se vama neke stvari cine "slicnim". je sasvim vasa stvar :) No. jer dok oni budu smisljali nazive za promenljive i lupali glavu gde su sta stavili u programu. 42 of 61 26. tako da ne lupamo glavu smisljanjem imena: #!/usr/bin/perl print "Unesite neki broj pa pritisnite ENTER\n".Uvod . $_ = <STDIN>.webpretraga. dali joj ime.html njihova slicnost. } if ($_ >= 5) { print "Perl je extra programski jezik". tj. a ona druga potpuno drugacija. medjutim. tj. Promena Redosleda Elemenata Operator reverse je veoma zgodna opcija u Perl-u. hocemo listu brojeva brojeva od 10 do 100: #!/usr/bin/perl @brojevi = ( 10.2011 11:13 . $neki_broj = <STDIN>. nece znati sta to uopste kuckate. Mogu vam samo reci da to nije nista.

Sortiranje Elementa u Perl-u Operator sort cete koristiti u Perl-u kada je potrebno da sortirate elemente niza po ASCII redosledu.12. @obrnuto = reverse(@brojevi)..Uvod . posebnim znakovima: #!/usr/bin/perl 43 of 61 26. print @obrnuto.html A sada hocemo listu brojeva.com http://webpretraga.webpretraga.2011 11:13 . imamo listu sa brojevima.100 ).com/perl/perl-brzi-prirucnik/perl-tutorial. imenima. obrnuto : #!/usr/bin/perl @brojevi = ( 10.Zasto uciti Perl ? . Na primer. Operator sort Sazetak: Mozda ce nam zatrebati sortiranje elemenata liste po ASCII redosledu.

velika slova su pre malih slova. #. Nick. @sredjeno.com http://webpretraga.Zasto uciti Perl ? . Nick. U principu. @sredjeno = sort @dzungla.html @dzungla = qw/ 1. #. %. a pre slova su brojevi. print "\n". 22. print "Osnovna lista: ". @dzungla. Patrick. nick/. 22. Nema potrebe da se zamarate detaljno ASCII sredjivanjem. Sada cemo napraviti sredjenu. 45.2011 11:13 .webpretraga. pre kojih su posebni znaci. nick/. bitno je da znate da tako nesto postoji i da vam moze koristiti kod sredjivanja veceg broja elemenata liste. print "Sredjena lista: ". John. print @dzungla. 45. sortiranu listu i isprintati je: #!/usr/bin/perl @dzungla = qw/ 1. John.Uvod . john.12. kod ASCII sredjivanja. Patrick. tj.com/perl/perl-brzi-prirucnik/perl-tutorial. john. STDIN kao lista Sazetak: 44 of 61 26. %.

Poenta price je da nakon svakog unesenog. do kraja "datoteke". Potprogrami u Perl-u pocinju sa oznakom "sub".com/perl/perl-brzi-prirucnik/perl-tutorial.html Ulaz sa tastature se moze posmatrati na vise nacina.Uvod . 45 of 61 26. do samog kraja fajla. moguce je stvari posmatrati i kroz kontekst liste. Kontekst liste znaci da operator <STDIN> koristi sve redove. moguce je da napisete i potprogram.pl sub uvecavam { $broj = $broj + 100. sto na engleskom znaci "subroutine". Ako se desi da elemente liste ne definisete preko tastature. tj. #!/usr/bin/perl #Program snimite kao uvecavac. Svaki red koji je unesen preko tastature. radilo se o skalarnom kontekstu. &uvecavam. Sada pricamo o "kontekstu liste".12. svaki put kad se pokrene >>> ". #!/usr/bin/perl @unos = <STDIN>. sledeci filozofiju ozbiljnih programskih jezika. Pored skalarnog konteksta. print "Ovaj potprogram uvecava neki broj za 100. predstavlja poseban element liste. naredbom chomp ( u kontekstu liste ) uklanjate oznaku za kraj reda za svaki red/element koji ste uneli.com http://webpretraga. ili procitanog reda. Podrutine po Potrebi Perl raspolaze sirokom lepezom opcija i funkcija pomocu kojih mozete pisati komplikovane i ozbiljne programe. Potprogrami u Perl-u Sazetak: Nas program mozemo pojednostaviti pisanjim manjih potprograma. Kada smo chomp-irali redove u spomenutoj lekciji. stampa neki broj uvecan za 100. nego izvlacite iz nekog fajla. &uvecavam.Zasto uciti Perl ? . &uvecavam. podrutina. } #Da bi "pozvali" potprogram u glavnom programu koristite ampersand: "&". print "\n".2011 11:13 . Isto tako. napisacemo mali potprogram koji svaki put kada se "pozove" u glavnom programu. Na primer. svi redovi fajla ce biti procitani. Chomp-iranje i Perl Konteksti Secate se kada smo govorili o operatoru chomp ? Treba obratiti paznju. &uvecavam. $broj.webpretraga. chomp(@unos). &uvecavam. &uvecavam.

print "\n".html Moze se desiti da vam koncept potprograma nije jasan u pocetku. "\n". Dodavanje Dinamike U prethodnoj lekciji smo obradili Perl potprograme.Uvod . ali isto je tako moguce uciniti ih "aktivnim" prosledjivanjem argumenata. "\n". Niko nam ne brani da napisemo neki programcic koji uzima argumente preko standardnog ulaza. Tacno je da vase poptrograme mozete uciniti nefleksibilnim.com http://webpretraga. tj.webpretraga. iz razloga sto ce vam ideja za pisanje potprograma doci onog trenutka kada vam se ucini da program koji pisete moze da se napise "citkije". a u nastavku programa prikazate rezultat tog programa. Moze vam se uciniti da su potprogrami poprilicno "staticni". To je u redu. Argumenti Perl Potprograma Sazetak: Argumente potprogramima mozete proslediti na vise nacica. #!/usr/bin/perl print print print print print "##########################################################\n". } 46 of 61 26. koje lako mozete promeniti.2011 11:13 . ili uradite nesto trece. $drugi_broj = <STDIN>.12. $prvi_broj = <STDIN>. i da se tu prica zavrsava. tj.com/perl/perl-brzi-prirucnik/perl-tutorial. print "\n". da se organizuje na takav nacin da odvojite neke delove programskog source-a kao posebne celine u kojima znate sta stoji. print "Unesite DRUGI broj pa pritisnite ENTER\n". tj. "##########################################################\n". tastature. print "Unesite PRVI broj pa pritisnite ENTER\n". a da ne dirate ostatak programa.Zasto uciti Perl ? . da rade ono stovi prethodno definisete. sub sredina { $sredina = ( $prvi_broj + $drugi_broj ) / 2. "Program za izracunavanje aritmeticke sredine dva broja: \n". potprogram uradi neku operaciju nad tim programima. iz nekog razloga.

2011 11:13 . print print print print print print "Globalne promenljive: \n". operator "my". $ime. 47 of 61 26. $ime = <STDIN>. Privatne promenljive. Globalno ili Privatno ? Da bi ste ispratili ovu lekciju.\n". $prezime). $prezime = "Smith". print "Aritmeticka Sredina iznosi: ".html print "Aritmeticku sredinu smo dobili iz potprograma \"sredina\". "\n". a vi nad njima. se prave upotrebljavajuci oznaku. $ime. jednostavno receno.Zasto uciti Perl ? . print "Unesite neko Prezime: ". Privatne promenljive nece biti menjane. "\n". "\n". promenljive sa "ogranicenom teritorijom". ako negde drugde u programu postoje promenljive istog imena.pl $ime = "John".com/perl/perl-brzi-prirucnik/perl-tutorial.webpretraga. print "Unesite neko Ime: ".Uvod . Privatne Promenljive u Perl Potprogramu Sazetak: Privatne promenljive vas resavaju nedoumica kod dodela imena. budete izvrsavali odredjene operacije. One su. ili leksicke promenljive. "Prezime: ". "Ime: ".12.com http://webpretraga. sub privatno { my ($ime. Mozemo to predstaviti pomocu malog programa. ili pomocu njih. potrebno je da ste razumeli lekcije o Perl potprogramima i o argumentima u Perl potprogramima. tj. $prezime = <STDIN>. Promenljive mogu biti globalne i privatne. $prezime. print "Ime iz potprograma je:". printajuci vrednosti globalnih i privatnih promenljivih : #!/usr/bin/perl #Snimite program kao privatne. &sredina.

ako ste pocetnik. sta moze da se izbegne. a sta ne. print "Potprogram \"\&privatno\" je izvrsen uspesno. $prezime. Ako vam se kojim slucajem desi da ubacite use strict u program koji ste napisali ranije.. sasvim je izvesno da cete prilikom izvrsavanja programa dobiti gomilu upozorenje.\n". Pragma-ma. Ovom pragmom forsirate neka pravila koje je vreme iznedrilo kao korisnam.com/perl/perl-brzi-prirucnik/perl-tutorial.rezultat mnogih neprospavanih noci... Za izvesno vreme.. print "\n". } print "\n". Uvodjenje Discipline na Perl Nacin Ovu lekciju bi trebali proci nakon citanja lekcije o davanju imena u Perl-u.\n"...Zasto uciti Perl ? .2011 11:13 . print "\n". a ta pravila su uvedena od nekih ozbiljnih i nadarenih programerskih umova. Pragmu use strict uvek navodite na pocetku programa (u kodu). Uvek cete moci da uradite to sto ste zamislili na vise nacina. koja namece svojevrsnu disciplinu prilikom pisanja programa.\n".12. Cak i pored toga.html print "Prezime iz potprograma je:".webpretraga.Uvod . Pragma Use Strict Sazetak: Ispravnost vecih programa se stice disciplinom kod pisanja manjih. kada akumulirate malo vise znanja. Programiranje je zanimljiva stvar.. Ponekad cete imati toliko mogucnosti da ce dvoumljenje sta upotrebiti predstavljati vecu boljku od svega ostalog. nema potrebe da se opterecujete. &privatno. a definitivno je dobra ideja da je koristite od pocetka pisanja programa (vremenski). Verovatno cete pokusati preduprediti probleme upotrebom Pragme use strict. #A ispod ovog komentara slede gomile i gomile koda. Pragmu use strict aktivirate bas tako: #!/usr/bin/perl use strict.com http://webpretraga. 48 of 61 26.. print ". print "Pokretanje potprograma. znacete sta moze da vam napravi problem u napred.

da nismo stavili print ispred potprograma. Nick. vecem programu (return. 45. ne zaboravimo. ne bi videli njegov rezultat.pl sub sortiranje_liste { @dzungla = qw/ 1.Uvod . #. Upotrebicemo i primer iz lekcije o sortiranju elemenata. Patrick. 22. nick/. john. Podrutinu. ali bi on (potprogram) svejedno bio izvrsen. } print "Napomena. imena i posebnih znakova. @sortirano = sort(@dzungla).html Operator Return Sazetak: Uz pomoc Operatora Return mozemo dobiti neku vrednost u potprogramu. #. John. Nick.2011 11:13 . 45.com http://webpretraga. ali u ovog puta u zamisljenom potprogramu (podrutini) koju cemo nazvati sortiranje_liste: @dzungla = qw/ 1. %. Patrick. i sortiranju elemenata liste. 22. return @sortirano. 45. Return i Podrutine u Perl-u Da bi ste lakse razumeli ovu lekciju.webpretraga.pl): #!/usr/bin/perl #Programcic snimite kao return. John. Napravicemo listu "@dzungla"kombinavanu od brojeva. Nick. } Ako sad pokrenete potprogram @sortiranje_liste. @sortirano = sort(@dzungla). %. nick/. pocinjemo sa "sub": sub sortiranje_liste { @dzungla = qw/ 1. #. bilo bi dobro da se podsetite price o potprogramima u Perl-u.12. nick/.com/perl/perl-brzi-prirucnik/perl-tutorial. John.Zasto uciti Perl ? . ako je to potrebno. i proslediti rezultat dalje. print &sortiranje_liste. %. john. Patrick. 22.\n\n". Unos Parametara 49 of 61 26. return @sortirano. john. u nekom zamisljenom.

. Kako mozemo biti sigurni da je nesto uopste uneto preko tastature.\n".ako vam to odgovara. print "Ovde ide neki vas source. while (defined($uneto = <STDIN>)) { print "Uneto preko tastature: $uneto \n".12.com http://webpretraga.. } U kontekstu liste.\n".webpretraga..\n". tacno je da smo u jednoj od prethodnih lekcija obradili unos parametara preko tastature u Perl-u.Zasto uciti Perl ? . Da ponovimo na brzinu.com/perl/perl-brzi-prirucnik/perl-tutorial. } 50 of 61 26. ali to ne znaci da se tu prica zavrsava.. mozete upotrebiti i "foreach" : foreach (<STDIN>) { print "Uradi nesto . Obzirom da smo prosli kroz dosta lekcija..2011 11:13 . } Secate se price o podrazumevanoj promenljivoj "$_" ? while (defined($_ = <STDIN>)) { print "Uneto preko tastature: $_ \n". Napredna Upotreba Unetog Da.html Sazetak: Koristite napredne opcije kod unosa parametara . vreme je da ih sistematizujemo. chomp($uneto).. Rekli smo da uzimamo parametre sa tastature preko komande <STDIN>: $uneto = <STDIN>. print "Ovde ide neki vas source..Uvod . Prisetimo se lekcije o "while" i "defined".

imacete onoliko paramatara koliko vam treba da pokretanje programa a da ne bude preterano konfuzno.2011 11:13 . sto cete cesto raditi na UNIX i slicnim sistemima. Pokretanje iz Terminala Ako ste mislili da parametre za program mozete unositi samo u programu. cudna stvorenja..com/perl/perl-brzi-prirucnik/perl-tutorial. Bar sto se tice Windows sistema. Na UNIX sistemima program bi pokretali ovako: $ .com http://webpretraga. Korisnici su ./vas_program parametar1 parametar2 parametar3 Naravno. Unos preko Dijamanta Sazetak: Dijamanti su prava stvar. posto su oni jednostavno prirodno okruzenje za programiranje u Perl-u. kucajuci preko tastature. Ako imate mnogo parametara za unos u terminalu. generalno.. navedu i parametri (na istoj liniji). ne znaci da obicni korisnici vaseg programa imaju razumevanja za cackanje po tastaturi vise nego sto smatraju za shodno.Zasto uciti Perl ? .html Kad smo vec kod onog znaka "^Z". ili da su parametri direktno uneseni u source programa . Parametre vasem programu mozete "proslediti" preko tastature i pomocu operatora "dijamant".Uvod . na pocetku izvrsavanja. Dakle. U tom slucaju im predlozite da nauce programiranje :) Da vidimo sad kako proslediti programu parametre u "terminalu" : 51 of 61 26. Unos preko dijamanta je specifican po tome sto unapred napravite svoj program da se pokrece sa komandne linije na takav nacin da se.. To znaci da smo pritisnuli na tastaturi kombinaciju za prekid CTRL + Z.varate se.. bitno je napomenuti da ste vi inapred osmislili vas program da prima ulazne podatke preo komadne linije. bolje razmislite o tome da program nekako uprostite. zatim se pritisne ENTER i program nakon toga krene sa izvrsavanjem. To sto ste vi programer. nakon navodjenja imena programa..12. Kod Perl-a se koriste za pravljenje programa koji rade zadavajem parametara preko tastature.webpretraga. pogotovo ako misle da to moze bolje.

Bitno je samo da znate da za tekst upotrebljavate jedne oznake. a ovde %s. $prezime.". "prvo". print "Uneto je: $_ \n". 3. A mozemo definisati i promenljive: $ime = "Michael". while (<>) { chomp. $ime. ipak ga pokrenite. $godine. rezultat mnozenja: %g. ne i na Windowsu is DOS prompt-a.com/perl/perl-brzi-prirucnik/perl-tutorial. } Bez obzira sto sam naveo da program nece raditi na Windows sistemima tako da prihvati ulaz preko DOS prompt-a. printf "Moje ime je: %s. 52 of 61 26. i napunio sam: %s. 5 x 6.webpretraga. bez navodnika : printf "Ovde ubacujemo %s. $prezime = "Smith". veci broj: $g".12. postupak je slican. Umesto "%s". cisto da vidite sta ce se desiti :) Naredba printf Sazetak: Ponekad je potrebno napraviti sablone za jasniji prikaz podataka. Sto se brojeva tice.". Naredbi print prosledjujemo sablon a zatim i elemente kojim hoce omda oppunimo taj sablon. kod brojeva se najcesce koristi "%g". "drugo". Formatiranje Izvestaja Naredba printf se koristi kada su nam potrebni takozvani sabloni za stampanje.com http://webpretraga.Uvod . 34 ** 25.Zasto uciti Perl ? . "trece". za tekst sablone cete koristiti oznaku "%s". prezime: %s. u zavisnosti od eventualnih operacija nad brojevima: printf "Prvi broj: $g. za brojeve druge. posto ce Perl pokusati predvideti kako ste zeleli da broj bude prikazan. ovde %s. $godine = trideset.html #!/usr/bin/perl # !!! Ovaj primer ce raditi na UNIX sistemima iz komandne linije. Na primer.2011 11:13 .

Zasto uciti Perl ? . Prosledjivanje iz Liste Prosledjivanje elemenata iz liste naredbi printf se sastoji u pravljenju liste. 454312.1434235. 454312.12.webpretraga. 53 of 61 26. definisanju formata sablona.Uvod .1434235. printf "Ovaj broj ce biti zaokruzen: %15d\n".2011 11:13 . printf "Ovaj broj ce biti zaokruzen: %15d\n". upotrebicete "%d": printf "Ovaj broj ce biti zaokruzen: %d". Za ljubitelje tabelarnog prikaza. i prosledjivanju elemenata: my @lista = qw( Michael Nick John ).com/perl/perl-brzi-prirucnik/perl-tutorial.html Ako vam je potrebno zaokruzivanje. 123123. my $sablon = "Imena su: \n" . tu je zadavanje sirine polja "%15d" : printf "Ovaj broj ce biti zaokruzen: %15d\n". Umesto "%15d" mozete staviti sirinu polja koja vam odgovara. 6543.43424. ("%20s\n" x @lista). @lista. printf $sablon.com http://webpretraga.453123.

com/perl/perl-brzi-prirucnik/perl-tutorial. STDOUT (standardni izlaz). Bitno je da zapamtite da postoji sest osnovnih identifikatora datoteka u Perl-u.12. bitno je da su vam osnove jasne. Pravljenje Identifikatora Datoteke Sazetak: Pravljenje identifikatora datoteka u Perl-u je stvar jednog programskog reda.2011 11:13 . veze.com http://webpretraga. da navedemo kako se prave identifikatori datoteka: 54 of 61 26. Kod malih programa bar znate gde da odmah trazite gresku.html Identifikatori Datoteka Sazetak: Identifikator datoteke je veza do datoteke. Naravno. Komplikovanije stvari neka dodju kasnije. tj. Jedan od razloga je i to da cete brze zapaziti identifikatore od ostalog dela programskog koda. Identifikatori datoteka nisu same datoteke. Vezice i Datoteke Ako cete nesto koristiti u Perl-u onda su to identifikatori datoteka. bez crtica i posebnih znakova. Ukoliko jeste. postoji jos mnogo opcija. stampac ili monitor. a za izlaz. Kako do Veze ? Ne citajte ovu lekciju ukoliko niste procitali osnove identifikatora datoteka u Perl-u. za standardni ulaz mozete birati tastaturu ili datoteku. Za vas su sada najbitnije prve tri. Jedna od prednosti poznavanja UNIX i slicnih sistema je upravo u laksem savladavanju koncepta preusmeravanja (piping) prilikom ucenja programiranja.Uvod . ali za pocetak je sasvim dovoljno da se zabavljate sa dva programa. niko vam ne brani da preusmeravate vise programa. Preusmeravanje je proces koji se cesto koristi na Unix sistemima. je da koristite velika slova. Naravno. Tesko da bi pisanje u takvom programskom jeziku bilo zadovoljstvo. pri cemu se izlaz jednog programa koristi kao ulaz u drugi program. Ono sto je narocito zanimljivo. Preporuka za pisanje identifikatora datoteka. je da u zavisnosti od vasih potreba.webpretraga. ali za pocetak je dovoljno ovo sto sada znate. Veze. Zamislite da sve u programu pisemo malim slovima. Najkrace receno.. To su STDIN (standardni ulaz). STDERR (izlaz za greske). ARGV i ARGVOUT. identifikatori sluze kao specificna veza do datoteke.. DATA.Zasto uciti Perl ? .

Na primer. print UPIS "Ovo je upisano u datoteku proba. zelimo da sadrzaj neke promenljive upisemo u datoteku "proba. koji se nalazi u folderu "c:\Perl". U prva dva slucaja.Zasto uciti Perl ? . open UPIS.12.pl $izlaz = "proba. Mada. oznakom ">izvestaj".txt u c:\\Perl folderu\n".Uvod . ne bi bilo lose.com/perl/perl-brzi-prirucnik/perl-tutorial.txt": #Mozete snimiti ovaj primer kao identifikatori. ">>kvarovi". "> $izlaz". "danasnji". ">izvestaj". imamo vise identifikatora pomocu kojih citamo (<). I zaista.html open open open open LOG. i nekim operacijama nad njima. Bez obzira sto je Perl odlican programski jezik. koristimo identifikator "LOG". NOVO. Kada zavrsite sa pravljenjem identifikatora datoteka.webpretraga. ili u bilo kom editoru teksta fajl "proba. print UPIS "test test test\n". videcete sledece: Zatvaranje Identifikatora Datoteke Sazetak: Identifikator ne morate zatvoriti.2011 11:13 . kako bi procitali datoteke "danasnji" i "jucerasnji". koristimo identifikator "PRIJAVA". to ne znaci da mozete biti aljkavi. U trecem slucaju. kako bi dodali pomocu ">>" nove podatke u datoteku "kvarovi". mozete i zatvoriti identifikator datoteke komandom "close IDENTIFIKATOR": 55 of 61 26.txt". kreiramo datoteku izvestaj radi upisa podataka u nju pomocu identifikatora "NOVO". ako bas necete. pravimo novu (>). PRIJAVA. Dakle.com http://webpretraga. ako otvorite u DOS programu EDIT. pa ce za vas uraditi dosta toga kao sto je automatsko zatvaranje datoteka kada program prestane sa radom. "<jucerasnji". Kulturno Zatvaranje Veze sa Datotekom Ne citajte ovu lekciju ukoliko niste procitali identifikatore datoteka i pravljenje identifikatora datoteka u Perl-u.txt". LOG. U cetvrtom slucaju. i dodajemo jos sadrzaja (>>) u neku datoteku.

2011 11:13 . Umesto da program prekine izvrsavanje. To sto ova mogucnost postoji." if (! open LOG. "> $izlaz". ovde "die" ima veoma cenjenu ulogu :) Funkcija die u Perl-u se koristi kada zelite. 56 of 61 26. open UPIS. Prva je ono "! open LOG". tj. ali postoji bitna razlika. pa Nastavi Izvrsavanje Funkcija warn.com/perl/perl-brzi-prirucnik/perl-tutorial. je dosta slicna funckiji die u Perl-u. Na primer. close UPIS. "ako ne moze da se otvori identifikator LOG.txt". print UPIS "Ovo je upisano u datoteku proba. pa dodje do eventualne konfuzije. Jednostavno. ">izvestaj" ) { die "Ne mogu napraviti datoteku izvestaj. a koji se svaki cas oglasava sa nekom greskom. print UPIS "test test test\n". program ce nakon poruke koja ide posle "warn" nastaviti izvrsavanje. Obavesti o Greskama.com http://webpretraga.txt u c:\\Perl folderu\n". A ako se odlucite na zatvaranje identifikatora. vec cim zavrsite sa operacijama nad datotekom. sem one poruke o gresci koju ste vi.pl $izlaz = "proba. ali ne stopira program. ne znaci da mozete tolerisati program koji ste napisali. da program prestane sa izvrsavanjem. Druga stvar je ova oznaka "$!". Teorijski bi trebalo nakon svakog otvaranja i da zatvarate identifikator. Dakle. tj.webpretraga. Znaci. napravi fajl "izvestaj". } Moguce je da vam ovde dve stvari nisu jasne. proveravajte source korak po korak i pravite arhivu programa koga pisete nekim redosledom koji ce vam biti logican i sutra. nakon nastale greske. Obavesti i Prekini Izvrsavanje Programa Opustite se. i upisati podatke u nju: $!". mada ce vas Perl program perfektno raditi i bez toga.Zasto uciti Perl ? . Taj uzvicnik u prevodu znaci : "ako ne moze". i upisati podatke u nju. definisali. ako ne mozemo da napravimo datoteku "izvestaj". vasim recima. Ta oznaka na kraju poruke o gresci sluzi tako da vas sistem dodatno obavesti o tome sta se desava. program neka napise: "Ne mogu napraviti datoteku izvestaj. mozete funkciom warn dobiti podatke o imenu programa i programskoj liniji na kojoj je greska. onda neka se isprinta poruka o gresci. nema napustanja programa. Funkcija die Sazetak: Funkcija "die" je korisnija nego sto se misli. a ne nakon sto se jos neka operacije izvrsi u programu.html Koristicemo primer iz prosle lekcije o pravljenju identifikatora: #Mozete snimiti ovaj primer kao identifikatori.12. tu oznaku treba odmah da navedete iza poruke koju ste vi definisali posle naredbe die. onda to ne radite negde pred kraj programa. sto je slucaj kod funkcije die. na ekran bude "izbacena" poruka sa opisom nastale greske. Kao i funkcija die. U principu.Uvod . da nakon uocene greske. Funkcija warn Sazetak: Funkcija "warn" vas obacvestava o gresci.

25 u slucaju jabuka ). umesto indeksiranja po brojevima.2011 11:13 . "Kruske" => 44.Uvod .Zasto uciti Perl ? .html Hesevi: keys/values Sazetak: Heseve koristite kada za jedan element obavezno imate vrednost ili opis. recimo . tj. foreach $produkt ( @artikli_kljuc) { print "Proizvod: ". imali smo elemente koji su u listi bili indeksirani po brojevima. Ako vam prethodni primer izgleda previse "nabacano". "Kruske" => 44. @artikli_cene. print "\n". 25. @artikli_kljuc = keys %proizvodi. ). "Breskve" => 18. Da uprostimo.com/perl/perl-brzi-prirucnik/perl-tutorial. ). Na primer. izdvojiti samo kljuceve. "Breskve" => 18. "Kruske" => 44.webpretraga. "Breskve". kada smo pisali o nisovima i listama. @artikli_kljuc = keys %proizvodi. @artikli_kljuc.com http://webpretraga. } print "\n". 57 of 61 26. ili samo vrednosti.12. probajte sa: %proizvodi = ( "Jabuke" => 25. a vrednosti su ono sto je desno (cene. @artikli_cene = values %proizvodi. 44. print "Cene: ". kada ga pokrenete. "Kruske". ali mislim da ce vam to delovati malo "zbijeno": %proizvodi = ( "Jabuke". print "Lista Proizvoda: ". Ako to sklopimo u mali programcic: %proizvodi = ( "Jabuke" => 25. Prethodni hes smo mogli napisati i na jednoj liniji. na malo drugaciji nacin. print "\n". @artikli_kljuc = keys %proizvodi. ). 18 ). @artikli_cene = values %proizvodi. "Breskve" => 18. $cena. Kljucevi i vrednosti ? Keys and values ? Kljucevi su ono sto je levo ("Jabuke"). $produkt. foreach $cena ( @artikli_cene) { print "Cena: ". sada elemente u hesu mozete nalaziti po "parnjaku" tog elementa. Odlicna stvar je sto iz hesa mozete. sa cenama tih proizvoda: %proizvodi = ( "Jabuke" => 25. Verovatno ste uocili da za kreiranje heseva koristimo oznaku za procenat "%". Kljucevi i Pridruzene Vrednosti Hesevi su specificni po tome sto se elementi u hesu "uparuju". @artikli_cene = values %proizvodi. kroz liste. napravicemo hes %proizvodi.

Uvod . "Breskve" => 18. Ako hocemo proci brzo kroz hes. Primera radi. Funkciju each koristite kod heseva kako bi od elemenata hesa napravili listu sa dva elementa. ). $cena) = each %proizvodi ) { print "$produkt => $cena\n". upotrebljavacemo je u kombinaciji sa petljom while: while ( ($produkt. ako nista drugo. Prvi element ce biti kljuc (key). Listanje elemenata hesa po sistemu kljuc/vrednost ce se zavrsiti kada se dodje do kraja hesa. "Kruske" => 44. } Funkcija each Sazetak: Funkcija "each" je korisna kod izvlacenje elemenata iz hesa radi lepseg prikaza.2011 11:13 . upotrebom funkcije each. a drugi element liste ce biti vrednost (value). sa ranijom lekcijom o funkciju foreach. iz lekcije o hesevima: %proizvodi = ( "Jabuke" => 25.html print "\n".12. da iskoristimo hes sa proizvodima i cenama. } Rezultat je jasan: 58 of 61 26.webpretraga.Zasto uciti Perl ? . Kljuc/Vrednost Listanje Nemojte mesati funkciju each koju obradjujemo sada.com/perl/perl-brzi-prirucnik/perl-tutorial.com http://webpretraga.

com/perl/perl-brzi-prirucnik/perl-tutorial. print @imena\n. i kod heseva. $obrisano.2011 11:13 . Nakon toga automatski stampamo trenutno stanje liste. 59 of 61 26. ali i listi. print "@imena\n". Kada bi sada zeleli da obrisemo Michaela iz liste: $obrisano = delete(@imena[1]). $obrisano = delete(@imena[1]).com http://webpretraga.webpretraga. print "Obrisali smo:".html Funkcija Delete Sazetak: Funkcija delete je korisna i kod listi. kada se zeli ukloniti neka kombinacija kljuc/vrednost. Brisanje Elemenata Heseva i Listi u Perl-u Funkciju delete se koristi kod heseva.Uvod .Zasto uciti Perl ? . ali: @imena = qw (Nick Michael John). Kombinaciju kljuc/vrednost nemate kod listi.12. print "@imena\n". Kada sklopimo sve : @imena = qw (Nick Michael John).

"Kruske" => 44. while ( ($produkt. "Kruske" => 44. ).com/perl/perl-brzi-prirucnik/perl-tutorial.Uvod . } 60 of 61 26. print "\n".com http://webpretraga. } print "\n". print "Nakon upotrebe funkcije delete\n". ). $cena) = each %proizvodi ) { print "$produkt => $cena\n". while ( ($produkt.12.webpretraga. "Breskve" => 18. Ukoliko zelite prethodni primer srediti pomocu funkcije each: %proizvodi = ( "Jabuke" => 25. #Stampamo sadrzaj hesa print %proizvodi. print %proizvodi. print "\n". $cena) = each %proizvodi ) { print "$produkt => $cena\n".html Funkcija delete i hesevi Koristicemo poznati primer iz lekcije o hesevima: %proizvodi = ( "Jabuke" => 25.Zasto uciti Perl ? . #Brisemo Jabuke $brisi = delete( $proizvodi { "Jabuke" } ). print "\n". #Brisemo Jabuke $brisi = delete( $proizvodi { "Jabuke" } ).2011 11:13 . "Breskve" => 18.

2011 11:13 .12.webpretraga.Uvod .html 61 of 61 26.com/perl/perl-brzi-prirucnik/perl-tutorial.Zasto uciti Perl ? .com http://webpretraga.

Sign up to vote on this title
UsefulNot useful