Docsity
Docsity

Pripremite ispite
Pripremite ispite

Studirajte zahvaljujući brojnim resursima koji su dostupni na Docsity-u


Nabavite poene za preuzimanje
Nabavite poene za preuzimanje

Zaradite bodove pomažući drugim studentima ili ih kupite uz Premium plan


Školska orijentacija
Školska orijentacija


Programiranje u Turbo Pascal-u, Rezime od Osnovi programiranja

Sadrzi osnovne smernice ya programiranje u Pascal-u.

Tipologija: Rezime

2013/2014

Učitan datuma 08.03.2014.

necaftn1
necaftn1 🇸🇷

3.5

(2)

3 dokumenti

1 / 210

Toggle sidebar

Ova stranica nije vidljiva u pregledu

Ne propustite važne delove!

bg1
Uvod u programiranje u Turbo Pascalu 7 (1)
Pregled razvoja programskih jezika
Prvi računari bili su vrlo složeni za korišćenje. Njih su koristili isključivo stručnjaci koji su
bili osposobljeni za komunikaciju s računarom. Ta komunikacija se sastojala od dva osnovna
koraka: davanje uputstava računaru i čitanje rezultata obrade. I dok se čitanje rezultata vrlo
brzo učinilo koliko-toliko snošljivim uvođenjem štampača na kojima su se rezultati ispisivali,
unošenje uputstava – programiranje – se sastojalo od mukotrpnog upisivanja niza nula i
jedinica. Ti nizovi su davali računaru uputstva kao što su: „saberi dva broja”, „premesti
podatak s neke memorijske lokacije na drugu”, „skoči na neku instrukciju izvan normalnog
redosleda instrukcija” i slično. Kako je takve programe bilo vrlo složeno pisati, a još složenije
čitati i ispravljati, ubrzo su se pojavili prvi programerski alati nazvani asembleri (engl.
assemblers).
U asemblerskom jeziku svaka mašinska instrukcija predstavljena je mnemonikom koji je
razumljiv ljudima koji čitaju program. Tako se sabiranje najčće obavlja mnemonikom
ADD, dok se premeštanje podataka obavlja mnemonikom MOV. Time se postigla bolja
čitljivost programa, ali i dalje je bilo vrlo složeno pisati programe i ispravljati ih jer je bilo
potrebno davati sve, pa i najmanja uputstva računaru za svaku pojedinu operaciju. Javlja se
problem koji će kasnije, nakon niza godina, dovesti i do pojave tzv. viših programskih jezika,
tj. potrebno je razviti programerski alat koji će osloboditi programera rutinskih poslova i
omogućiti mu da se usredi na problem koji rešava.
Zbog toga se pojavljuje niz viših programska jezika, koji preuzimaju na sebe neke „dosadne”
programerske poslove. Tako je FORTRAN bio posebno pogodan za matematičke proračune,
zatim BASIC koji se vrlo brzo učio, COBOL koji je bio po pravilu namenjen upravljanju
bazama podataka.
Šta je program i kako ga napisati?
Elektronski računari postali su danas pribor kojim se svakodnevno koristimo kako bismo sebi
olakšali posao ili se zabavili. Prvi navod će mnogi poricati, navodeći kao kontraargument
činjenicu da im je za podizanje novca u banci pre trebalo znatno manje vremena nego otkad
su šalteri kompjuterizovani. Međutim, činjenica je da su mnogi poslovi danas nezamislivi bez
računara; u krajnjoj liniji, dokaz za to je tekst koji upravo čitate koji je u potpunosti napisan
pomoću računara.
Sam računar, čak i kada se uključi na niskonaponsku mrežu, nije u stanju da uradi ništa
korisno. Na današnjim računarima se ne može čak ni zagrejati jelo, što je inače bilo moguće
na računarima sa elektronskim cevima. Ono što vam nedostaje je pamet neophodna za
koristan rad računara: programi, programi, … i samo programi. Pod programom
podrazumevamo niz naredbi u mašinskom jeziku koje procesor u vašem računaru izvršava i
shodno njima obrađuje podatke, izvodi matematičke proračune, ispisuje tekstove, iscrtava
krive na ekranu itd. Pokretanjem programa sa diska, diskete ili kompakt diska (CD-ROM-a),
program se učitava u radnu memoriju računara i procesor počinje sa mukotrpnim postupkom
njegovog izvršavanja.
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e
pf4f
pf50
pf51
pf52
pf53
pf54
pf55
pf56
pf57
pf58
pf59
pf5a
pf5b
pf5c
pf5d
pf5e
pf5f
pf60
pf61
pf62
pf63
pf64

Delimični pregled teksta

Preuzmite Programiranje u Turbo Pascal-u i više Rezime u PDF od Osnovi programiranja samo na Docsity!

Uvod u programiranje u Turbo Pascalu 7 (1)

Pregled razvoja programskih jezika

Prvi računari bili su vrlo složeni za korišćenje. Njih su koristili isključivo stručnjaci koji su bili osposobljeni za komunikaciju s računarom. Ta komunikacija se sastojala od dva osnovna koraka: davanje uputstava računaru i čitanje rezultata obrade. I dok se čitanje rezultata vrlo brzo učinilo koliko-toliko snošljivim uvođenjem štampača na kojima su se rezultati ispisivali, unošenje uputstava – programiranje – se sastojalo od mukotrpnog upisivanja niza nula i jedinica. Ti nizovi su davali računaru uputstva kao što su: „saberi dva broja”, „premesti podatak s neke memorijske lokacije na drugu”, „skoči na neku instrukciju izvan normalnog redosleda instrukcija” i slično. Kako je takve programe bilo vrlo složeno pisati, a još složenije čitati i ispravljati, ubrzo su se pojavili prvi programerski alati nazvani asembleri (engl. assembler s).

U asemblerskom jeziku svaka mašinska instrukcija predstavljena je mnemonikom koji je razumljiv ljudima koji čitaju program. Tako se sabiranje najčešće obavlja mnemonikom ADD, dok se premeštanje podataka obavlja mnemonikom MOV. Time se postigla bolja čitljivost programa, ali i dalje je bilo vrlo složeno pisati programe i ispravljati ih jer je bilo potrebno davati sve, pa i najmanja uputstva računaru za svaku pojedinu operaciju. Javlja se problem koji će kasnije, nakon niza godina, dovesti i do pojave tzv. viših programskih jezika, tj. potrebno je razviti programerski alat koji će osloboditi programera rutinskih poslova i omogućiti mu da se usredi na problem koji rešava.

Zbog toga se pojavljuje niz viših programska jezika, koji preuzimaju na sebe neke „dosadne” programerske poslove. Tako je FORTRAN bio posebno pogodan za matematičke proračune, zatim BASIC koji se vrlo brzo učio, COBOL koji je bio po pravilu namenjen upravljanju bazama podataka.

Šta je program i kako ga napisati?

Elektronski računari postali su danas pribor kojim se svakodnevno koristimo kako bismo sebi olakšali posao ili se zabavili. Prvi navod će mnogi poricati, navodeći kao kontraargument činjenicu da im je za podizanje novca u banci pre trebalo znatno manje vremena nego otkad su šalteri kompjuterizovani. Međutim, činjenica je da su mnogi poslovi danas nezamislivi bez računara; u krajnjoj liniji, dokaz za to je tekst koji upravo čitate koji je u potpunosti napisan pomoću računara.

Sam računar, čak i kada se uključi na niskonaponsku mrežu, nije u stanju da uradi ništa korisno. Na današnjim računarima se ne može čak ni zagrejati jelo, što je inače bilo moguće na računarima sa elektronskim cevima. Ono što vam nedostaje je pamet neophodna za koristan rad računara: programi, programi, … i samo programi. Pod programom podrazumevamo niz naredbi u mašinskom jeziku koje procesor u vašem računaru izvršava i shodno njima obrađuje podatke, izvodi matematičke proračune, ispisuje tekstove, iscrtava krive na ekranu itd. Pokretanjem programa sa diska, diskete ili kompakt diska (CD-ROM-a), program se učitava u radnu memoriju računara i procesor počinje sa mukotrpnim postupkom njegovog izvršavanja.

Programi koje pokrećete na računaru su u izvršnom obliku (engl. executabl e), razumljivom samo procesoru vašeg (i njemu sličnih) računara. U suštini, mašinski kôd se sastoji od nizova binarnih cifara: nula i jedinica.

Budući da su današnji programi tipično dužine nekoliko megabajta, naslućujete da ih autori nisu pisali direktno u mašinskom kôdu. Gotovo svi današnji programi se pišu u nekom od viših programskih jezika (FORTRAN, BASIC, Pascal, C) koji su donekle razumljivi i ljudima (barem onima koji imaju nešto pojma o engleskom jeziku). Naredbe u tim jezicima se sastoje od mnemonika. Kombinovanjem tih naredbi programer slaže izvorni kôd (engl. Source cod e) programa, koji se pomoću posebnih programa prevodilaca (engl. compile r) i povezivača (engl. linker) prevodi u izvršni kôd. Prema tome, pisanje programa u užem smislu podrazumijeva pisanje izvornog kôda. Međutim, kako pisanje koda nije samo sebi svrha, pod pisanjem programa u širem smislu podrazumeva se i prevođenje, odnosno povezivanje programa u izvršni kôd. Prema tome, možemo govoriti o četiri faze kod pravljenja programa:

  1. pisanje izvornog kôda
  2. prevođenje izvornog kôda,
  3. povezivanje u izvršni kôd i
  4. testiranje programa.

Da bi se za neki program moglo reći da je uspešno napravljen, treba uspešno proći kroz sve četiri faze. Kao i svaki drugi posao, i pisanje programa zahteva određeno znanje i veštinu. Prilikom pisanja programera vrebaju Scile i Haribde, danas poznatije pod nazivom greške ili bugovi (engl. bug - stenica) u programu. Ako se pojave greške u nekoj od faza izrade programa, izvorni kôd treba doraditi i ponoviti sve prethodne faze. Zbog toga postupak izrade programa nije pravolinijski, već manje-više podseća na mukotrpno kretanje u krug. Na slici 1. je šematski prikazan celokupni ciklus izrade programa, od njegovog početka, pa sve do njegovog završeta. Analizirajmo najvažnije faze izrade programa.

upozorenja. Greške koje prijavi prevodilac nazivaju se greškama pri prevođenju (engl. compile-time error s). Nakon toga programer će pokušati ispraviti sve navedene greške i ponovo prevesti izvorni kôd – sve dok prevođenje koda ne bude uspešno okončano, ne može se pristupiti povezivanju koda. Prevođenjem izvornog dobija se datoteka objektnog kôda (engl. object cod e), koja se lako može prepoznata po tome što obično ima nastavak .o ili .obj (u našem primeru bi to bilo primer.obj).

Nakon što su ispravljene sve greške uočene prilikom prevođenja i kôd ispravno preveden, pristupa se povezivanju objektnih kôdova u izvršni. U većini slučajeva objektni kôd dobijen prevođenjem programerovog izvornog kôda treba povezati sa postojećim bibliotekama (engl. librarie s). Biblioteke su datoteke u kojima se nalaze već prevedene gotove funkcije ili podaci. One se isporučuju zajedno s prevodiocem, mogu se posebno kupiti ili ih programer može sam razviti. Bibliotekama se izbegava ponovno pisanje vrlo često korišćenih operacija. Tipičan primer za to jesu biblioteka matematičkih funkcija koja se uvek isporučuje uz prevodilac, a u kojoj su definisane sve funkcije poput trigonometrijskih, eksponencijalnih i slično.

Prilikom povezivanja proverava se mogu li se svi pozivi kodova realizovati u izvršnom kodu. Ukoliko povezivač tokom povezivanja uoči neku nepravilnost, ispisaće poruku o greški i onemogućiti generisanje izvršnog koda. Ove greške nazivaju se greškama pri povezivanju (engl. link-time error s) – sada programer mora prionuti na ispravljanje grešaka koje su nastale pri povezivanju. Nakon što se isprave sve greške, kôd treba ponovno prevesti i povezati.

Uspešnim povezivanjem dobija se izvršni kôd. Međutim, takav izvršni kôd još uvek ne garantuje da će program raditi ono što ste zamislili. Na primer, može se dogoditi da program radi pravilno za neke vrednosti podataka, ali da se za druge ponaša nepredvidivo. U tom se slučaju radi o greškama pri izvođenju (engl. run-time error s).

Da bi program bio potpuno korektan, programer mora da istestira program da bi uočio i ispravio te greške, što znači ponavljanje celog postupka u lancu „ispravljanje izvornog koda- prevođenje-povezivanje-testiranje”. Kod jednostavnijih programa broj ponavljanja će biti manji i smanjivaće se proporcionalno sa rastućim iskustvom programera. Međutim, kako raste složenost programa, tako se povećava broj mogućih grešaka i celi postupak izrade programa neiskusnom programeru može postati mukotrpan.

Za ispravljanje grešaka pri izvođenju, programeru na raspolaganju stoje programi za otkrivanje grešaka (engl. debugge r). Radi se o programima koji omogućavaju prekid izvođenja izvršnog koda programa koji testiramo na unapred zadatim naredbama, izvođenje programa naredbu po naredbu, ispis i promene trenutnih vrednosti pojedinih podataka u programu. Najjednostavniji programi za otkrivanje grešaka ispisuju izvršni kôd u obliku mašinskih naredbi. Međutim, većina današnjih naprednih programa za otkrivanje grešaka su simbolički (engl. symbolic debugge r) – iako se izvodi prevedeni, mašinski kôd, izvođenje programa se prati preko izvornog kôda pisanog u višem programskom jeziku. To omogućava vrlo lagano lociranje i ispravljanje grešaka u programu.

Osim grešaka, prevodilac i povezivač redovno prijavljuju i upozorenja. Ona ne onemogućavaju nastavak prevođenja, odnosno povezivanja koda, ali predstavljaju potencijalnu opasnost. Upozorenja se mogu podeliti u dve grupe. Prvu grupu čine upozorenja koja javljaju da kôd nije potpuno korektan. Prevodilac ili povezivač će zanemariti našu grešku i prema svom nahođenju generisati kôd. Drugu grupu čine poruke koje upozoravaju da

„nisu sigurni da je ono što smo napisali upravo ono što smo želeli napisati”, tj. radi se o dobronamernim upozorenjima na zamke koje mogu proizići iz načina na koji smo program napisali. Iako će, uprkos upozorenjima, program biti preveden i povezan (možda čak i korektno), pedantan programer neće ta upozorenja nikada zanemariti – ona često upućuju na uzrok grešaka pri izvođenju gotovog programa. Za precizno tumačenje poruka o greškama i upozorenja neophodna je dokumentacija koja se isporučuje uz prevodilac i povezivač.

Da zaključimo: „Šta nam, dakle, treba za pisanje programa na jeziku Turbo Pascal?” Osim računara, programa za pisanje i ispravljanje teksta, prevodioca i povezivača trebaju vam još samo tri stvari: interesovanje, puno slobodnog vremena i dobra literatura. Interesovanje verovatno postoji, ako ste sa čitanjem ovog teksta stigli čak dovde. Slobodno vreme će vam trebati da isprobate primere i da se sami oprobate u bespućima Turbo Pascala.

Uvod u Turbo Pascal

Zašto je Pascal dobar izbor programskog jezika? Odgovor će se sam nametnuti, ako se kaže bar nekoliko reči o nastanku jezika Pascal.

Njegov tvorac Niklaus Wirth (profesor na Eidgenossische Technische Hochschule, Cirih, Švajcarska) izborom imena jezika počastio je velikog francuskog naučnika i filozofa Blaisea Pascala (1623 — 1662) koji je izgradio jedan od prvih mehaničkih računara.

Stvarajući programski jezik Pascal, Wirth je težio da nauči učenika da programira tako da ne mora da menja logiku stvari koje je već ranije naučio, da ono što želi da izrazi bude i u programu čitljivo, jasno i pregledno. Omogućiti učeniku da svoje misli saopštava programom tako, da naredbe slede misli, da se njihov tok ne gubi u iznenadnim skokovima, da se razumeju bez muke. Wirth je želeo da se programiranje uči takvim jezikom u kojem će se misli lako prenositi, a s druge strane, da program jasno odražava misli programera. Imajući na raspolaganju više programske jezike kao što su Fortran, Algol i Basic Wirth nije bio zadovoljan. Pokušao je da svoje želje zadovolji ubacivanjem novih stvari u Algol. Ubrzo je bio nezadovoljan krparenjem Algola i odlučio je da napiše novi jezik. S radom je počeo šezdesetih godina, a prvi program-prevodilac proradio je u kasnim sedamdesetim godinama.

Wirth je prvi proklamovao prednosti strukturnog programiranja. One se sastoje u mogućnosti razlaganja problema u manje celine (module ili blokove) od kojih svaka sme da ima samo jedan ulaz i jedan izlaz izbegavajući naredbu GO TO. Informacije se prenose u sledu iz bloka u blok, dok se ne dođe do konačnog rešenja.

Wirth je želeo kao prvo, jezik koji će odražavati principe sistematičnog kreiranja i drugo, da njegovo ostvarenje na računaru bude pouzdano i efikasno. To je i ostvario Pascalom, zajednički radeći sa svojim kolegama, a baza mu je bila Algol.

Wirth smatra da učenje programiranja zapravo znači učenje struktura podataka, toka informacija i kontrole.

Programski jezici kao što su Fortran i Basic nemaju takve osobine i konstrukcije da programer može direktno izraziti programom svoje ideje. Često se nameće potreba da

Akcije od 1 do N ponavljaju se određeni broj puta.

Ponavljanje do akcije N izvrši se bar jedanput, a zatim se u zavisnosti od rezultata testa nastavlja ili prekida.

Ponavljanje zavisi od testa, može se desiti da se obavi ili ne obavi nijednom.

c) Slučaj selekcije

Tok programa zavisi od selektora čiju vrednost određuje test.

Svi su ovi tokovi ostvarivi u Pascalu bez naredbe GO TO primenom naredbi FOR, IF.. THEN.. ELSE, REPEAT, WHILE, CASE. One omogućuju da se i letimičnim čitanjem dobro napisanog programa Pascal može pretpostaviti njegovo ponašanje, tj. statički plan koda određuje njegovo dinamičko ponašanje. To je vrlo značajno za programera, jer on mora ispravljati greške u programu i mora održavati program. Ukoliko je moguće obuhvatiti što više informacija jednostavnim čitanjem programa, to će biti lakše i brže izdvojiti greške.

Pascal ima bogate mogućnosti izražavanja različitih tipova podataka. Uz standardne numeričke podatke u obliku celih i realnih brojeva te znakova, programer može sam definisati svoj tip podataka. Zatim, vrlo jednostavno rešava zapis (slog) u kojem se nalazi više tipova podataka združenih u celovit podatak. Na primer, podatak o učeniku zahteva podatke: ime i prezime, adresu, godinu rođenja, pol, razred, uspeh itd.. U Pascalu se to može izraziti strukturiranim tipom podataka RECORD. Na taj način Pascal omogućuje programeru da nađe direktan put izražavanja svojih misli programom. U drugim (starijim) programskim jezicima programer mora stvarati, održavati i dokumentovati strukture, koje su već deo samog Pascala. Zapravo, to omogućuje dobar program prevodilac (kompajler)! Na tome je Wirth takođe radio, i bio svestan mogućeg sukoba između pogodnosti jezika i njegove izvodljivosti na računaru, odnosno, ono što će značiti ugodno proširenje za programera može postati poteškoća za stvaraoca prevodioca. Međutim, i tu je Pascal jak! Prvo, promenljive u Pascalu mogu imati lokalno značenje za jedan blok u programu, na primer, u funkciji ili proceduri (koje su nezavisni delovi u odnosu na druge blokove). S druge strane lokalne promenljive za pisca programa prevodioca znače organizaciju memorije na osnovu potreba. Deo memorije koji je blok zauzimao pri izvršavanju, oslobađa se nakon izvršavanja i može se dodeliti drugim delovima programa. Drugo, podintervalni tip podataka omogućuje programeru da veoma opisno može izražavati podatke, a stvaraocu prevodioca daje mogućnost da podatke memoriše na manjem prostoru memorije jer se prevodiocem svakom podatku dodeljuje redni broj i on se memoriše.

U Pascalov prevodilac Wirth nije ugradio eksponencijalni operator. To je koristan operator, ali i vrlo skup! Pascal ga ostvaruje upotrebom petlje u programu.

Važna osobina viših programskih jezika je njihova prenosivost (portabilnost). I u tom pogledu Pascal je povoljan, budući da je Wirth veliki zagovornik prenosive sistemske podrške. Naime, izvorni program u Pascalu prevodiocem prelazi u njegov pseudo kod, P-kôd, koji se zatim izvodi interpretacijom. Svojstvo Pascala da generiše P-kôd dopfinosi prenosivosti sa jednog računara na drugi. Sledeća šema prikazuje način izvršavanja programa u višim programskim jezicima.

Za Pascal bi se mogao napraviti (u suglasnosti s navedenom šemom), ovakav prikaz:

Podaci tipa pokazivač koriste se za dinamičke promenljive.

U narednim odeljcima biće obrađeni navedeni tipovi podataka.

Celobrojni tip

Za prikaz celih brojeva koristi se celobrojni tip podataka. Na primer, celobrojne kostante su:

Znak + je ispred konstante proizvoljan. Ako ne postoji nikakav predznak pretpostavlja se da je konstanta pozitivna.

Napomena : Najveća celobrojna konstanta u obradi zavisi od računara na kojem se radi, na primer, raspon na jednom računaru može biti od —32767 do 32767, dok na drugom može biti od — 281474976710655 do iste pozitivne vrednosti.

Realni tip

Brojevi koji imaju decimalni deo, istorijski se nazivaju realni. Na primer, realne konstante su:

Realna konstanta u Pascalu ne sme počinjati ili završavati decimalnom tačkom, na primer:

459.. Umesto toga treba da se napiše 459.0 i 0.

U Pascalu je dozvoljeno pisanje realnih vrednosti s pokretnom tačkom (engl. floating- point). Takav način pisanja progodan je za vrlo velike i vrlo male vrednosti, na primer 750000000.0 ili 0.000000781. Tako se izbegava pisanje velikog broja nula.

Primer:

8.5E + 7 odgovara 8 .5 10^7.

Pisanje brojeva u obliku pokretne tačke poznato je i pod nazivom eksponencijalna notacija. Eksponent pokazuje za koliko mesta treba decimalnu tačku pomeriti u levo ili desno. Ako je eksponent pozitivan tačka se pomera udesno, a ako je negativan tačka se pomera ulevo.

Predznak + iza znaka E može se izostaviti. Evo još nekoliko primera prikaza realnih konstanti:

Prikaz broja u eksponencijalnom obliku

Konvencionalni prikaz broja

5.2E4 5200 3.141 E2 314. 3.57 E-2 0. 777.9E - 7

Konstanta napisana u eksponencijalnom obliku uvek prikazuje realni broj. To je slučaj i kada se decimalna tAčka izostavi.

Napomena: Pascal nema decimalni zarez, nego decimalnu tačku. Zbog toga i svi decimalni brojevi u tekstu imaju tačku, a ne zarez.

Na primer, sledeći brojevi napisani u istom redu su ekvivalentni:

754E - 1 754.0E - 1 75.

1E3 1.0E3 1000.

1E-4 1.0E-4 0.

Broj 235 i 235.0 prikazuje istu vrednost u običnoj aritmetici, međutim, tako napisane vrednosti u Pascalu znače različite tipove podataka. One će biti i različito prikazane unutar računara pa će i rezultat obrade biti različit. One se zato ne smeju poistovetiti u programu Pascal.

Tačnost računanja u računaru nije ista ako se računa s realnim brojevima ili s celim brojevima. Ako se koristi zapisivanje brojeva u eksponencijalnom obliku tačnost zavisi od broja bitova koji se koriste za zapis mantise. Veličina broja zavisi od broja bitova koji služe za zapis eksponenta. U praksi se uvek radi zaokruživanje decimalnih brojeva zbog čega nastaje izvesna greška.

Računanje u realnoj aritmetici u računaru troši više vremena od celobrojne aritmetike.

Booleov tip

Računar u radu proverava različite uslove i s obzirom na rezultat ispitivanja nastavlja rad. Zbog toga se upotrebljava tip podataka koji ima dve vrednosti, prikazane sljedećim konstantama:

False True

Uvod u programiranje u Turbo Pascalu 7 (2)

Ispisivanje podataka

Da bi se dobio rezultat obrade koriste se naredbe za ispisivanje (odnosno, štampanje). Računar može dati ispis u različitim formatima. Svaki računar ima svoj ,,standardni" format za ispisivanje podataka. Međutim, u višim programskim jezicima postoji mogućnost da i programer sam odredi format ispisivanja preko različitih formata za ispis. Takav je slučaj i u Pascalu. Svaki računar koji radi u Pascalu ima svoj ,,standardni" format i mogućnost da programer kreira format ispisa.

Ispisivanje celobrojnih vrednosti

a) naredba WRITE

Ova naredba ispisuje vrednost koja je napisana u zagradi iza reči WRITE. Na primer:

WRITE (1, 2, 3, 4, 5)

ispisuje:

1 2 3 4 5

Kad želimo da računar izvrši nekoliko naredbi jednu iza druge, tada pišemo naredbe pojedinačno, odvajajući ih tačka-zarezom. Obično se samo jedna naredba piše u jednom redu.

WRITE (1, 2); WRITE (3); WRITE (4, 5)

b) naredba WRITELN

Ova naredba omogućuje ispis u novom redu. Na primer, za naredbe:

WRITELN (1, 2); WRITELN (3); WRITELN (4, 5)

ispis će biti u obliku:

1 2 3 4 5

Ako želite da se preskoči red pri ispisu, piše se samo WRITELN, na primer:

WRITELN (-10, 5, 8); WRITELN (-4); WRITELN; WRITELN (-100, 35)

Nakon izvršenja svih naredbi za ispisivanje biće preskočen jedan red između drugog i trećeg reda, znači ispis će imati oblik:

-10 5 8

-100 35

U upotrebi je češće naredba WRITELN nego WRITE. Ako želimo sami da odredimo oblik ispisa (na primer, razmak između brojeva) može se upotrebiti oznaka za proizvoljno dugo polje ispisa (engl. field width parameters).

Sledeći primer to ilustruje:

WRITELN ( - 5 :10)

Ovo znači da će se ispisati vrednost -5, a za ispis je rezervisano 10 mesta

  • 5

Evo još jednog primera:

WRITELN (15 :8, -100 :8, 1 :8)

1 5 - 1 0 0 1

Ispisivanje realnih brojeva

Kad se realni brojevi ispisuju bez oznake za željenu dužinu ispisa većinom se ispisuju vrednosti u eksponencijalnom obliku.

Na primer:

WRITELN (1.5, -8.25)

1.500000000000E + 00 -8.250000000000E + 00

Za konvencionalno ispisivanje možemo rezervisati dva područja proizvoljno duga i to tako, da prvi broj pokazuje ukupan broj mesta za ispis, a drugi broj pokazuje koliko je od toga decimalnih mesta.

Na primer:

Turbo pascal obezbeđuje dva nezavisna metoda pravljenja Pascal programa. Možete da koristite svoj editor (program za pisanje i prepravljanje ASCII teksta) i samostalni Turbo Pascal kompajler (prevodilac), ili možete da koristite integrisano razvojno okruženje (engl. Integrated Development Environment – IDE) koje sadrži moćan editor, Pascal kompajler, linker (povezivač) i debager (program za otkrivanje i ispravljanje grešaka).

Sa stanovišta korisnika, IDE izgleda kao tekst editor koji sadrži komandu Compile i pridružene funkcije Debug. Ovo znači da ne morate da napuštate ovo okruženje, jednostavno tu pišete svoj kôd, prevodite ga, ispravljate greške i ponovo prevodite sve dok ne dobijete zadovoljavajući rezultat. Za vreme izvršavanja programa, IDE obezbeđuje debager na nivou izvornog koda. Koristeći IDE debager, možete da pomerate editorski pokazivač na određeni red izvornog koda i postavite prekidnu tačku za privremeno zaustavljanje izvršavanja programa, a zatim da nastavite jednokoračni hod kroz izvorni kôd, proveravajući vrednosti promenljivih u prozoru Watch. Šta više, možete i da menjate vrednosti promenljivih za vreme izvršavanja programa.

Kada da koristite IDE?

Uopšteno govoreći, želećete da koristite IDE kadgod je to moguće. Međutim, u zavisnosti od veličine vašeg programa i memorijskog kapaciteta biće premašene granice koje IDE zahteva. U tom slučaju, možete svoj program podeliti u manje celine i raditi u IDE-u ili koristiti samostalni kompajler.

Pokretanje Turbo Pascal razvojnog okruženja

Pod pretpostavkom da ste instalirali Turbo Pascal u poddirektorijum \TP, kao što je u ovom primeru, da biste pristupili razvojnom okruženju na komandnoj liniji ispisaćete sledeće:

C:\TP> TURBO

Ukoliko ste instalirali Turbo Pascal u neki drugi direktorijum tada treba da stavite tu lokaciju u DOS Path naredbu ili da se prebacite u taj direktorijum da biste mogli da pristupite.

Biranje stavki menija

Stavke menija u razvojnom okruženju možete birati na više načina. Najlakši način je pomoću miša; postavite pokazivač miša na željenu stavku (komandu) i pritisnete levo dugme miša. Na ekranu se prikazuje padajući meni i vi postavljate pokazivač na stavku koja vam je potrebna i dvo-klikom miša je izabirate. Na sledećoj slici prikazan je padajući meni Compile razvojnog okruženja Turbo Pascal.

Slika 2.

Takođe, korišćenjem tastature možete pristupiti stavkama menija tako što ćete istovremeno pritisnuti taster Alt i istaknuto slovo odgovarajuće stavke menija. Zatim, korišćenjem pokazivačkih tastera (tastera sa strelicama) možete se kretati kroz menije. Kada dođete do željene stavke, pritiskom na taster Enter aktivirate označenu stavku.

Pored toga, neke stavke menija možete aktivirati pritiskom tasterske kombinacije koja je označena pored tih stavki u meniju (ispisana sa desne strane tih stavki menija).

Na kraju, ukoliko želite, možete pristupiti liniji menija pritiskom funkcijskog tastera F10. Time označavate meni File u gornjem levom uglu ekrana. Upotrebite tastere sa strelicama da biste došli do željenih stavki u menijima, a pritiskom na Enter ih aktivirate.

Uređivanje, snimanje i prevođenje programa

Da biste napravili novi program, izaberite u meniju File stavku New. Na ekranu se pojavljuje prazan prozor sa naslovom NONAME00.PAS centriranim na gornjoj ivici. Tekstualni kursor (pokazivač) će se pojaviti u gornjem levom uglu prozora.

Sada možete da počnete sa direktnim pisanjem svog prvog Pascal programa u IDE editoru. Krenimo od najprostijeg mogućeg primera:

Program Zdravo; Begin Writeln(‘Zdravo programeri!’) End;

Posle upisivanja ovog programa, možete ga snimiti na disk pomoću komande Save As iz menija File. Okvir za dijalog koji će se potom pojaviti, tražiće od vas da navedete naziv datoteke u koju će program biti snimljen. Upišite naziv datoteke i zatim ili pritisnite taster Tab dva puta da biste

Taster Tab Pomera pokazivač na sledeću kontrolu u nizu. Tasteri Shift-Tab Pomera pokazivač na prethodnu kontrolu u nizu. Tasteri sa strelicama Pomeraju pokazivač između stavki polja za potvrdu i radio dugmadi. Taster razmaknica (Space)

Bira ili poništava radio dugme ili polje za potvrdu.

Taster Enter Bira označenu kontrolu. Klik mišem Omogućava ili onemogućava stavku radio dugme ili polje za potvrdu, bira kontrolu tipa dugme, premešta akciju na stavku na koju je kliknuto. Istaknuta tasterska kombinacija

Stavke koje sadrže istaknutu tastersku kombinaciju mogu se izabrati direktnim pritiskom na te tastere, usled čega se akcija prebacuje na izabranu stavku. Radio dugmad Ova kontrola vam omogućava da izaberete samo jednu stavku od više ponuđenih. Kada birate radio dugme pritiskom tastera razmaknice ili mišem, ili pritiskom na istaknutu slovnu oznaku, sva ostala radio dugmad unutar te grupe postaju neaktivna. Polja za potvrdu Ove kontrole se koriste za omogućavanje ili onemogućavanje bilo kog broja stavki. Obično su grupisane i tasterskim strelicama možete da se krećete između ponuđenih stavki. Pritisnite taster razmaknicu da izaberete stavku, ili kada je stavka već izabrana, pritisnite razmaknicu da poništite taj izbor. Ulazno polje Ulazna polja vam omogućuju da upišete proizvoljnu tekstualnu informaciju i da koristite tasterske strelice za pomeranje ulevo i udesno unutar teksta, povratni taster i taster Delete da obrišete tekst, taster Home da se prebacite na početak polja a taster End da se prebacite na kraj polja. Većina ovih polja obezbeđuje horizontalno pomeranje sadržaja (skrolovanje), što vam omogućuje da upišete tekst koji je širi od prikazanog ulaznog polja. Kada se to desi, na oba kraja polja pojaviće se odgovarajuće strelice da pokažu da ima više teksta nego što je prikazano. Koristite odgovarajuće tastere za kretanje kroz tekst ulevo, odnosno udesno, ili pritiskajte mišem na odgovarajuću strelicu. Okvir liste Oni se koriste za izbor stavke sa velikog spiska. Na sledećoj slici prikazan je okvir za dijalog Open u IDE okruženju. Tipična upotreba ovog okvira za dijalog je za otvaranje datoteke koja se nalazi u direktorijumu čiji sadržaj se prikazuje u listi. Ako postoji više stavki nego što može da stane u polje liste, prikazuje se ili na dnu ili na desnoj strani okvira traka za pomeranje sadržaja. Da biste koristili okvir liste, upotrebite taster Tab da biste prebacili pokazivač u okvir liste, ili koristite miša da kliknete na stavku unutar liste. Kada se već nalazite u okviru liste, možete koristiti standardne navigacione tastere.

Slika 2.

Koristite taster Ins da se prebacujete iz režima umetanja u režim prepisivanja znakova.

Korišćenje editora

Editor razvojnog okruženja je mesto gde ćete provesti veći deo svog vremena pišući kôd, prepravljajući postojeće programe i ispravljajući greške. Editoru pristupate izborom opcije New u meniju File ili otvaranjem postojeće datoteke, takođe iz menija File. Alternativno, možete otvoriti postojeću datoteku navođenjem njenog naziva na komandnoj liniji kada prvi put pokrenete IDE kucajući sledeću komandu:

C:\TP>TURBO SHELL.PAS

koja pokreće Turbo i učitava postojeći program SHELL.PAS za uređivanje.

Kada ste u editoru, na raspolaganju vam je niz komandi sa tastature za uređivanje teksta. Kako upisujete tekst, pokazivač se pomera duž ekrana, na desno. Kada dođete do kraja reda, pritisnite taster Enter da biste prešli u novi red, mada će editor pomerati prikaz horizontalno ukoliko treba da upišete izvorni kôd čija širina je veća od širine ekrana.

Pritiskom na taster Ins, editor se prebacuje iz režima umetanja u režim prepisivanja preko postojećeg sadržaja i obrnuto.

Navigacija u editoru

Horizontalna traka za pomeranje sadžaja prikazuje tekući položaj datoteke, u odnosu na početak i kraj svojih redova, a vertikalna traka za pomeranje sadržaja prikazuje tekući položaj datoteke u