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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Sign up to vote on this title
UsefulNot useful