Raunarstvo i informatika III razred Uvod u programski
- Slides: 38
Računarstvo i informatika III razred
Uvod u programski jezik Pascal
Šta je opisano u ovoj lekciji: n n n Osnovni simboli jezika Rezervisane reči Imena (identifikatori) Struktura jednostavnog programa Promenljive Tipovi podataka 3
UVOD u programski jezik PASCAL Programski jezik Pascal razvio je švajcarski matematičar Niklaus Virt 1974. godine 4
Osnovni simboli jezika n Osnovni simboli jezika su: n n Specijalni znaci su i neštampajući znaci: n n n Slova: ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz Cifre: 0 1 2 3 4 5 6 7 8 9 Specijalni znaci: + - * / = < > [ ]. , ; : ^ ( ) ‘ { } razmak (space), novi red (enter), znak za tabulaciju (tab) Skup osnovnih simbola Pascal-a je uređen i konačan Svaki simbol ima redni broj koji zavisi od implementacije jezika 5
Rezervisane (ključne) reči n n Osnovni elementi jezika koji imaju fiksirano značenje and, array, begin, case, const, div, downto, do, else, end, file, for, function, goto, if, in, label, mod, nil, not, of, or, procedure, program, record, repeat, set, then, to, type, until, var, while, with 6
Imena (identifikatori) n n Koriste se za označavanje osnovnih objekata jezika – konstanti, tipova, promenljivih, procedura i funkcija Ime je proizvoljan niz slova i cifara koji počinje slovom SLOVO CIFRA 7
Struktura programa u Pascal-u n Zaglavlje programa n n n Blok naredbi programa n n n Počinje rezervisanom reči program iza koje se navodi ime programa Odeljak za definisanje konstanti Odeljak za opis promenljivih Kod složenijih programa postoje i odeljci za definisanje tipova, deklaraciju labela, deklaraciju funkcija i procedura Počinje rezerisanom reči begin i završava rezervisanom reči end Između se nalazi jedna ili više naredbi kojima se rešava problem Iza bloka naredbi programa obavezno se navodi tačka (. ) kao oznaka kraja programa. program Ime programa ; Odeljak za definisanje konstanti Odeljak za definisanje promenljivih begin naredba . end ; 8
Promenljive n n n Promenljiva je registar operativne memorije kome je dodeljeno ime Sadržaj registra (vrednost promenljive) može se menjati u toku izvršavanja programa Svaka nova vrednost, upisana u registar, potire prethodnu vrednost, tako da u svakom vremenskom trenutku promenljiva ima samo jednu, tekuću vrednost Naredba dodele : = je naredba koja promenljivoj sa leve strane dodeljuje vrednost izraza sa desne strane – npr. a: =5, x: =x+1, a: =x+y Sve vrednosti koje se koriste moraju pripadati nekom od tipova koji su definisani u jeziku 9
Tipovi podataka n n n Pri programiranju treba imati na umu dva aspekta: naredbe kojima se vrši obrada podataka i organizaciju podataka koji će biti obrađivani Organizacija podataka ostvaruje se korišćenjem koncepta tipa podataka Tipom se zadaje: n skup mogućih vrednosti promenljivih n skup operacija koje se mogu izvršiti nad promenljivom tog tipa n način registrovanja promenljivih u računaru 10
Tipovi podataka Prosti Standardni (ugrađeni) Korisnički (nestandardni) Celobrojni Realni Znakovni Logički Nabrojivi Intervalni Složeni Pokazivački Nizovi Slogovi Datoteke Skupovi Pokazivački tipovi su oni tipovi čije vrednosti lociraju podatak u memoriji 11
Celobrojni tip – INTEGER n Celobrojni tip podataka (na nivou programskog jezika) je niz cifara dekadnog brojnog sistema ispred koga može biti znak + ili – + CIFRA n Od načina registrovanja celog broja u memoriji računara (fizički nivo) zavisi njegov opseg vrednosti Ako je 16 -bitno registrovanje (2 bajta), najveći ceo broj (0111111112) koji se može predstaviti je 32767 – tu vrednost ima imenovana konstanta maxint Skup celih brojeva je ograničen na interval [-32768, 32767] i to je tip integer Ako je 32 -bitno registrovanje (4 bajta) interval je [-2 31, 231 -1] i to je tip longint 12
Celobrojni tip – INTEGER Aritmetičke operacije / celobrojni rezultat + − * div mod sabiranje oduzimanje množenje celobrojno deljenje ostatak pri celobrojnom deljenju Prioritet operacija je * div mod + − 13
Celobrojni tip – INTEGER Operacije poređenja / rezultat logičkog tipa = <> < > <= >= jednako različito manje veće manje ili jednako veće ili jednako Vrednosti logičkog tipa – true (tačno) i false (netačno) 14
Celobrojni tip – INTEGER Standardne (ugrađene) funkcije / celobrojni rezultat abs(x) sqr(x) succ(x) pred(x) apsolutna vrednost od x kvadrat od x sledbenik od x (x+1) prethodnik od x (x-1) 15
Celobrojni tip – INTEGER Standardne (ugrađene) funkcije / rezultat logičkog tipa odd(x) da li je broj neparan 16
Celobrojni tip – INTEGER Standardne (ugrađene) funkcije / rezultat realnog tipa sin(x) cos(x) arctan(x) ln(x) exp(x) sqrt(x) sinus od x kosinus od x arkus tangens od x prirodni logaritam od x stepen x za osnovu e kvadratni koren iz x 17
Celobrojni tip – INTEGER Celobrojni tipovi Delphi-jevog Pascal-a: Byte Shortint Integer Longint Word Int 64 0. . 255 -128. . 127 -231. . 231 -1 0. . 65535 -263. . 263 -1 1 B 1 B 4 B 4 B 2 B 8 B 18
Realni tip – REAL n n Realni tip podataka je podskupa realnih brojeva koji se mogu registrovati u konkretnoj verziji programskog jezika npr. za 6 bajtova je [2. 9*10 -39, 1. 7*1038] Realni brojevi mogu da budu prikazani u dva oblika: n n pozicioni 2. 15, -31. 125 eksponencijalni 2. 15 E 00, 215 E-02, -3. 1125 E 01 mantisa – deo ispred E i eksponent – deo iza E 19
Realni tip – REAL Aritmetičke operacije / realan rezultat + − * / sabiranje oduzimanje množenje deljenje Jedan operand može da bude ceo broj 20
Realni tip – REAL Operacije poređenja / rezultat logičkog tipa = <> < > <= >= jednako različito manje veće manje ili jednako veće ili jednako Vrednosti logičkog tipa – true (tačno) i false (netačno) 21
Realni tip – REAL Standardne (ugrađene) funkcije / realni rezultat abs(x) sqr(x) sin(x) cos(x) arctan(x) ln(x) exp(x) sqrt(x) frac(x) apsolutna vrednost od x kvadrat od x sinus od x kosinus od x arkus tangens od x prirodni logaritam od x stepen x za osnovu e kvadratni koren iz x razlomljeni deo od x 22
Realni tip – REAL Standardne (ugrađene) funkcije / celobrojni rezultat trunc(x) round(x) ceo deo od x najbliži ceo broj od x 23
Logički tip – BOOLEAN n n Logički tip podataka definiše podatke koji mogu imati vrednosti logičkih konstanti true ili false Promenljive logičkog tipa zauzimaju jedan bajt 24
Logički tip – BOOLEAN Logičke operacije / rezultat logičkog tipa not and or xor negacija konjunkcija disjunkcija ekskluzivna disjunkcija (true ako se operandi razlikuju) Prioritet operacija – not, and, or, xor Logički tip je uređen – false < true ord(false)=0, ord(true)=1 25
Znakovni tip – CHAR n n n Znakovni tip podataka definiše uređeni skup osnovnih znakova PASCAL jezika dozvoljenih u konkretnoj verziji programskog jezika Znakovnom tipu pripada praznina (space) Promenljiva znakovnog tipa zauzima jedan bajt Vrednost znakovne promenljive ili konstante je znak iz osnovnog skupa znakova Znakovna konstanta se navodi između apostrofa Apostrof se navodi sa dva apostrofa – '''' 26
Znakovni tip – CHAR Funkcije koje znak povezuju sa rednim brojem u uređenom skupu znakova ord(c) chr(i) redni broj (kod) znaka c u skupu znakova npr. ord(‘A’)=65, ord(‘B’)=66. . . znak čiji je redni broj (kod) i, pod uslovom da postoji chr(65)=‘A’, chr(66)=‘B’ ili #65=‘A’ ord(chr(i))=i , chr(ord(c))=c Znakovni tip je uređen – mogu se primeniti operacije poređenja =, <>, <, >, <=, >= i funkcije pred(c) i succ(c) 27
Niz simbola – STRING n n n Tip string se koristi za rad sa nizovima simbola Kad se deklariše promenljiva – string[dužina] Podrazumevana dužina string promenljive je od 0 do 255 znakova Prazan string se obeležava sa dva apostrofa – ‘’ Elementima stringa pristupa se sa ime[indeks] Redni brojevi simbola u stringu počinju od 1 28
Niz simbola – STRING Funkcije za rad sa stringovima: length(st) copy(st, poz, n) concat(st 1, st 2. . . ) pos(st 1, st 2) dužina, broj simbola podstring dužine n počev od poz spajanje stringova (može i +) prvo pojavljivanje st 1 u st 2 (ako ne postoji onda je 0) delete(st, poz, n) brisanje n elemenata od poz insert(st 1, st 2, poz) umetanje st 1 u st 2 na poz Na podacima tipa string mogu se primeniti operacije poređenja 29
Struktura programa u Pascal-u n n n Neophodno – tačnost dobijenih rezultata Poželjno – što kraće vreme izvršavanja i što manje zauzeće memorije Preporuke za čitljivost koda: U svakoj liniji samo po jedna naredba n Ugnježdavanje struktura za po dva mesta n Velike programe razbijati na manje segmente n Smislena imena konstanti, promenljivih, funkcija i procedura n 30
Struktura programa u Pascal-u n Zaglavlje programa Odeljak za opis obeležja (label) n Odeljak za definisanje konstanti (const) n Odeljak za definisanje tipova (type) n Odeljak za opis promenljivih (var) n Odeljak za opis funkcija i procedura program Ime programa ; n n n Svaki odeljak u zaglavlju završava se sa ; Sve se može izostaviti osim odeljka naredbi Odeljak za opis obeležja Odeljak za definisanje konstanti Odeljak za definisanje tipova Odeljak za opis promenljivih Odeljak za opis funkcija i procedura begin naredba ; . end 31
Odeljak za definisanje konstanti (const) const n n n Ime = konstantan izraz ; Imenovana konstanta dobija vrednost koja je ceo ili realan broj, string ili ime već definisane konstante Konstante ne mogu menjati vrednost u programu Tipizirane konstante (promenljive sa inicijalnom vrednošću) const promenljiva: tip = vrednost n Standardne konstante true, false, maxint, maxlongint, Pi 32
Odeljak za opis promenljivih (var) var Ime : tip ; , n n Svaka promenljiva mora biti deklarisana Ovako prevodilac može da raspodeli memoriju, tj. da veže imena i adrese 33
Izrazi n Izraz je sintaksna jedinica jezika koja definiše poredak i način izračunavanja neke vrednosti korišćenjem: n n Operacija definiše koje akcije treba izvršiti nad operandima n n n operanda (konstante, promenljive, funkcije) ovalnih (malih) zagrada operacijskih simbola unarne binarne Prioritet operacija n n not, − *, /, div, mod, and +, −, or =, <>, <, >, <=, >= 34
Naredba dodele – : = n n n promenljiva : = izraz Tip izraza mora biti isti kao i tip promenljive (osim real <- integer) Vrste izraza aritmetički n logički n tekstualni n n Pogledati udžbenik, strana 53, primer 6 n Razmena vrednosti dve promenljive 35
Procedure ulaza i izlaza n n Skoro svi programi imaju učitavanje podataka i izdavanje rezultata Koriste se standardne procedure read / write koje rade sa standardnim datotekama input / output Kraj linije – Enter – CR Kraj datoteke (fajla) – Ctrl + Z – EOF 36
Učitavanje podataka n n n n read(A 1, A 2, . . . An) readln Tipovi promenljivih i ulaza se moraju poklapati Praznine se ignorišu (razmak, Enter, Tab) osim za tekstualne promenljive Ne može se koristiti logička promenljiva String se učitava do zadate dužine ili do Enter 37
Izlaz podataka n n n write(A 1, A 2, . . . An) writeln Izlaz odgovara tipu promenljive Formatiranje izlaza write(i: izlaznopolje) write(r: izlaznopolje: decimale) ako se ne navede broj decimala izlaz je sa E višak se sa leve strane popunjava razmacima 38
- Uvod u programski jezik r
- Rečenični i pravopisni znakovi 7 razred
- Književnost 5 razred provjera znanja
- Hamlet act iii scene iii
- 1234 informatika
- Informatika 5 razred binarni sustav
- Udžbenik iz informatike za 5 razred
- Informatika 5 razred mape i datoteke
- Python 7 razred
- Informatika 6 razred programiranje
- Informatika za 8 razred
- Informatika za 6 razred pitanja i odgovori
- Informatika 6 razred word
- Python 7 razred
- Programski jezik c
- Osnovni programski jezik
- Preveduva
- Dunja dulčić
- Niži programski jezici
- Sta je programski jezik
- Jupiter programski jezik
- Programski jazici
- Delphi programski jezik
- Vrste programskih jezika
- Programski jazici
- Python programski jezik
- Objektno orijentirani programski jezici
- Sql programski jezik
- C# programski jezik
- Kristina ledinski
- Jezik logo
- Pisanje programa
- Prolog programski jezik
- Dejan akerman
- Masinski jezik
- Programski jezici i strukture podataka
- Tehnicki fakultet mihajlo pupin
- Fortran programski jezik
- Programiranje i programski jazici