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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

o brojevima i konverzijama se za sada ne brinite. 22 of 61 26. Znakovni nizovi . ili polunavodnici. Perl je tu da se uhvati u kostac sa onim racunskim radnjama koje mu zadate. samo sluze kao pokazivaci.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. ne zaboravite da na Windows-u imate kalkulator sa opciom Scientific za kompleksnija izracunavanja.com http://webpretraga.Zasto uciti Perl ? .2011 11:13 . Oni sami po sebi nisu deo znakovnog niza.Uvod . Obrat\' paznju Jednostruki navodnici. Napomena: Ako vam nekad bude trebalo. imaju zadatak da Perl-u pokazu pocetak i kraj nekog znakovnog niza.12. vase je samo da znate kako da definisete zadatak.webpretraga.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Sign up to vote on this title
UsefulNot useful