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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

"\n".0.4 + 3 = ".com/perl/perl-brzi-prirucnik/perl-tutorial. "\n". 5 * 40. "\n". 5 . onda je modulo 1 :) Perl i Brojevi u Praksi Hajde da prethodne racunske operacije proverimo u Perl-u. "10 % 3 = ". "\n". Napisacemo mali program brojanica.0. a ostaje 1 do 10.0 * 40.pl i snimiti ga u "c:\Perl". 10 % 3.0 * 40 = ".0 = ". "\n".0 = ". 5 + 6. "\n". "\n". 5 * 40. Modulo je ostatak deljenja a posto je 10 : 3 = 3. "5 . "5. nego modulo. "\n". "5 * 40. "10 / 2 = ". "2. "\n".com http://webpretraga. "\n".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". "\n". po obicaju. 5.Uvod . "5.0 * 40.2.4 + 3.2011 11:13 . 5.12. "\n". 10 / 2. "\n".webpretraga. "\n". ~*~ 21 of 61 26.html 10 % 3 # jeste 1 Ovo zadnje sto smo naveli nije postotak. 2. "\n".0 * 40. "5 * 40 = ". "\n".Zasto uciti Perl ? . "\n".

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

print "Obrisali smo:". print "@imena\n". Kombinaciju kljuc/vrednost nemate kod listi. $obrisano. i kod heseva.Zasto uciti Perl ? . ali: @imena = qw (Nick Michael John).com/perl/perl-brzi-prirucnik/perl-tutorial. $obrisano = delete(@imena[1]).webpretraga. print @imena\n. Nakon toga automatski stampamo trenutno stanje liste.html Funkcija Delete Sazetak: Funkcija delete je korisna i kod listi. 59 of 61 26.Uvod .12. ali i listi. Kada sklopimo sve : @imena = qw (Nick Michael John).2011 11:13 .com http://webpretraga. kada se zeli ukloniti neka kombinacija kljuc/vrednost. 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".

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

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

Sign up to vote on this title
UsefulNot useful