Uvod - Zasto uciti Perl ? - webpretraga.

com

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

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

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

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

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

1 of 61

26.12.2011 11:13

Uvod - Zasto uciti Perl ? - webpretraga.com

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

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

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

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

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

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

2 of 61

26.12.2011 11:13

Uvod - Zasto uciti Perl ? - webpretraga.com

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

Korak 1 - Nalazimo zvanicni Perl-ov sajt.

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

3 of 61

26.12.2011 11:13

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Sign up to vote on this title
UsefulNot useful