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

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

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

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

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

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

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

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

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

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

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

com http://webpretraga. 2. 3. 2. 4. print "\n". #!/usr/bin/perl print "Ovo je prva recenica\n". i idemo da ga pokrenemo: 1.2011 11:13 . Hajde sada da: 1. prazan red.Zasto uciti Perl ? . 4.print. zadajemo komandu za prikaz na monitoru . na kraju recenice): #!/usr/bin/perl print "Ovo je prva recenica\n". 5. Sada definisemo samo prazan red pomocu "\n". kao i \n. naucili smo osnove "stampanja" na ekran. 3. Sada unosimo drugu recenicu. 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. zajedno sa recenicom pod navodnicima (navodnici su obavezni.Uvod . i komandom "cd Perl") kucamo redovi. "Ovo je druga recenica\n". 5. "\n".webpretraga.12. Idemo na START > RUN Ukucamo "cmd". Pojavi se "DOS" Odemo u "c:\Perl" (komandom "cd \". pritisnemo ENTER Trebalo bi da dobijete sledeci rezultat: 14 of 61 26. pritisnemo ENTER. "\n". i neke brojeve po izboru: #!/usr/bin/perl print print print print print "Ovo je prva recenica\n".com/perl/perl-brzi-prirucnik/perl-tutorial.html Stampanje vise redova. #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.pl u "C:\Perl". jedan ispod drugog Ok.pl. "453524343523\n".

. 2. tj dolazak do c:. Trebace vam i za programiranje u drugim programskim jezicima. 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. 4. Niko od vas ne trazi da znate DOS u detalje. Graficki programi i kliktanje misa ce doci kasnije. Verovatno vam se ne svidja ideja da u doba brzih racunara ucite DOS.Zasto uciti Perl ? .com/perl/perl-brzi-prirucnik/perl-tutorial. pa idemo na opciju RUN (run = pokreni neki program) : 15 of 61 26.Uvod .webpretraga. cak i ako ste sledili uputstva iz instalacije ActiveState Perl-a. moguce je da vam ta DOS stvar nije potpuno jasna.com http://webpretraga. 7.html Pokretanje Perl programa pod Windows-om ? Sazetak: Program se pokrece tastaturom za sada. i tako dalje. 6. Prebacivanje u folder iznad foldera u kome ste sad ( vracanje nazad ) Prebacivanje u jezgro hard-diska. zato obratite paznju i dobro savladajte materiju. 5. ako nista drugo. ali je realnost takva da ne mozete ozbiljno da pridjete programiranju na Windows-u ako ne poznajete bar osnovne DOS komande. ili d:. ili e:. ( 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.2011 11:13 . hajde da ponovimo jos jednom: Idemo na START . Taj Famozni "DOS" Mislim da nekolici vas dugujem par objasnjenja. 3.12. Ukoliko ste imali problema kod pokretanje Perl programa iz prethodnih lekcija.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Sign up to vote on this title
UsefulNot useful