Računarstvo i informatika

Slides:



Advertisements
Similar presentations
Programiranje kroz aplikacije
Advertisements

Isti upit iskazan na različite načine
Programiranje kroz aplikacije
Struktura i princip rada računara
Tipovi objekata u Object Pascal-u
Uvod u programiranje - matematika – VI predavanje
Petlje WHILE – WEND.
Ponavljanje gradiva 2. razreda
Java Hello world !.
Algoritamske/programske strukture
Primena integrisanih razvojnih alata
Programiranje kroz aplikacije
Programi,Podaci,Varijable,Računanje- Uvod
Osnovne jezičke konstrukcije
1.Osnove HTML-a HyperText Markup Language – tekst procesor koji nije What You See Is What You Get HTML je standardizovan jezik koji se koristi na Web-u.
Visual Basic 2010 Osnove VB Uvod u računarstvo.
OSNOVE PROGRAMIRANJA U PROGRAMSKOM JEZIKU
Programiranje - Blokovi naredbi i logički tipovi –
Pojam DBMS. Relacione baze podataka
Java Petlje i logika - 1.
IP šema adresiranja.
Upravljački sistemi baza podataka
CheckBox RadioButton RadioGroup
Naredbe ciklusa.
Programiranje u VB Uvod
IF NAREDBA – naredba grananja
Uvod u programiranje - matematika – XI predavanje
Strukturni tipovi podataka
Petlje FOR - NEXT.
REPEAT…UNTIL Naredbe ciklusa.
Programi,Podaci,Varijable,Računanje - 2
PROGRAMSKE PETLJE Milenković Gabrijela.
Објектно орјентисано програмирање
Sintaksa programskih jezika
KREIRANJE OBJEKATA.
OSNOVE PROGRAMSKOG JEZIKA C
Uvod u programiranje - matematika – X predavanje
RAZGRANATA STRUKTURA Zadaci i rešenja
RAZGRANATA STRUKTURA Zadaci i rešenja
Arrays and strings -2 (nizovi i znakovni nizovi)
Reference ćelije i opsega
Binarne datoteke u Pascalu
Elementi programskog jezika PASCAL
Programi,Podaci,Varijable,Računanje - 1
Hyper Text Markup Language
Arrays and strings -1 (nizovi i znakovni nizovi)
Tipovi podataka.
SQL. SQL SQL Structured Query Language (SQL) predstavlja programski jezik koji je projektovan za potrebe pretraživanja i upravljanja podacima u sistemima.
Struktura MAC adrese i Ethernet okvira
Naredba Case Višestruko grananje.
Organizacija sistema zasnovana na
M-datoteke.
InputBox i naredba IF.
MessageBox.
Ključne reči,identifikatori, konstante i promenljive
PROGRAMSKI JEZIK PASCAL
Visual Basic – Prvi primjer
Osnovni simboli jezika Pascal
Do While ... Loop struktura
TEST II razredi.
Objektno-orijentirano programiranje
Skup instrukcija procesora
Naredbe u php-u.
Programski jezik Python
Programiranje - Naredbe za kontrolu toka programa – 1. dio
Programiranje - Naredbe za kontrolu toka programa – 3. dio
Vježbanje.
Сабақтың тақырыбы: Мәлімет типтері. Шамалардың сипатталуы
Vježbanje.
Vježbenica 2: struktura grananja – 2.dio
Presentation transcript:

Računarstvo i informatika III razred

Uvod u programski jezik Pascal

Šta je opisano u ovoj lekciji: Osnovni simboli jezika Rezervisane reči Imena (identifikatori) Struktura jednostavnog programa Promenljive Tipovi podataka

UVOD u programski jezik PASCAL Programski jezik Pascal razvio je švajcarski matematičar Niklaus Virt 1974. godine

Osnovni simboli jezika Osnovni simboli jezika su: Slova: ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz Cifre: 0 1 2 3 4 5 6 7 8 9 Specijalni znaci: + - * / = < > [ ] . , ; : ^ ( ) ‘ { } Specijalni znaci su i neštampajući 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

Rezervisane (ključne) reči 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

Imena (identifikatori) 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 SLOVO CIFRA

Struktura programa u Pascal-u Zaglavlje programa 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 Blok naredbi programa 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 . ;

Promenljive 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

Tipovi podataka 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: skup mogućih vrednosti promenljivih skup operacija koje se mogu izvršiti nad promenljivom tog tipa način registrovanja promenljivih u računaru

Tipovi podataka Prosti Složeni Pokazivački Standardni (ugrađeni) Korisnički (nestandardni) Nizovi Slogovi Datoteke Skupovi Pokazivački tipovi su oni tipovi čije vrednosti lociraju podatak u memoriji Celobrojni Realni Znakovni Logički Nabrojivi Intervalni

Celobrojni tip – INTEGER Celobrojni tip podataka (na nivou programskog jezika) je niz cifara dekadnog brojnog sistema ispred koga može biti znak + ili – 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 (01111111111111112) 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 [-231, 231-1] i to je tip longint + CIFRA -

Celobrojni tip – INTEGER Aritmetičke operacije / celobrojni rezultat + sabiranje − oduzimanje * množenje div celobrojno deljenje mod ostatak pri celobrojnom deljenju Prioritet operacija je * div mod + −

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)

Celobrojni tip – INTEGER Standardne (ugrađene) funkcije / celobrojni rezultat abs(x) apsolutna vrednost od x sqr(x) kvadrat od x succ(x) sledbenik od x (x+1) pred(x) prethodnik od x (x-1)

Celobrojni tip – INTEGER Standardne (ugrađene) funkcije / rezultat logičkog tipa odd(x) da li je broj neparan

Celobrojni tip – INTEGER Standardne (ugrađene) funkcije / rezultat realnog tipa sin(x) sinus od x cos(x) kosinus od x arctan(x) arkus tangens od x ln(x) prirodni logaritam od x exp(x) stepen x za osnovu e sqrt(x) kvadratni koren iz x

Celobrojni tip – INTEGER Celobrojni tipovi Delphi-jevog Pascal-a: Byte 0 .. 255 1B Shortint -128 .. 127 1B Integer -231 .. 231-1 4B Longint -231 .. 231-1 4B Word 0 .. 65535 2B Int64 -263 .. 263-1 8B

Realni tip – REAL Realni tip podataka je podskup skupa 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: pozicioni 2.15, -31.125 eksponencijalni 2.15E00, 215E-02, -3.1125E01 mantisa – deo ispred E i eksponent – deo iza E

Realni tip – REAL Aritmetičke operacije / realan rezultat + sabiranje − oduzimanje * množenje / deljenje Jedan operand može da bude ceo broj

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)

Realni tip – REAL Standardne (ugrađene) funkcije / realni rezultat abs(x) apsolutna vrednost od x sqr(x) kvadrat od x sin(x) sinus od x cos(x) kosinus od x arctan(x) arkus tangens od x ln(x) prirodni logaritam od x exp(x) stepen x za osnovu e sqrt(x) kvadratni koren iz x frac(x) razlomljeni deo od x

Realni tip – REAL Standardne (ugrađene) funkcije / celobrojni rezultat trunc(x) ceo deo od x round(x) najbliži ceo broj od x

Logički tip – BOOLEAN Logički tip podataka definiše podatke koji mogu imati vrednosti logičkih konstanti true ili false Promenljive logičkog tipa zauzimaju jedan bajt

Logički tip – BOOLEAN Logičke operacije / rezultat logičkog tipa not negacija and konjunkcija or disjunkcija xor 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

Znakovni tip – CHAR 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 – ''''

Znakovni tip – CHAR Funkcije koje znak povezuju sa rednim brojem u uređenom skupu znakova ord(c) redni broj (kod) znaka c u skupu znakova npr. ord(‘A’)=65, ord(‘B’)=66... chr(i) 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)

Niz simbola – STRING 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

Niz simbola – STRING Funkcije za rad sa stringovima: length(st) dužina, broj simbola copy(st, poz, n) podstring dužine n počev od poz concat(st1, st2...) spajanje stringova (može i +) pos(st1, st2) prvo pojavljivanje st1 u st2 (ako ne postoji onda je 0) delete(st, poz, n) brisanje n elemenata od poz insert(st1, st2, poz) umetanje st1 u st2 na poz Na podacima tipa string mogu se primeniti operacije poređenja

Struktura programa u Pascal-u 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 Ugnježdavanje struktura za po dva mesta Velike programe razbijati na manje segmente Smislena imena konstanti, promenljivih, funkcija i procedura

Struktura programa u Pascal-u Zaglavlje programa Odeljak za opis obeležja (label) Odeljak za definisanje konstanti (const) Odeljak za definisanje tipova (type) Odeljak za opis promenljivih (var) Odeljak za opis funkcija i procedura Svaki odeljak u zaglavlju završava se sa ; Sve se može izostaviti osim odeljka naredbi program Ime programa ; 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 . ;

Odeljak za definisanje konstanti (const) konstantan izraz const Ime = ; 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 Standardne konstante true, false, maxint, maxlongint, Pi

Odeljak za opis promenljivih (var) Ime : tip ; , Svaka promenljiva mora biti deklarisana Ovako prevodilac može da raspodeli memoriju, tj. da veže imena i adrese

Izrazi Izraz je sintaksna jedinica jezika koja definiše poredak i način izračunavanja neke vrednosti korišćenjem: operanda (konstante, promenljive, funkcije) ovalnih (malih) zagrada operacijskih simbola Operacija definiše koje akcije treba izvršiti nad operandima unarne binarne Prioritet operacija not, − *, /, div, mod, and +, −, or =, <>, <, >, <=, >=

Naredba dodele – := promenljiva := izraz Tip izraza mora biti isti kao i tip promenljive (osim real <- integer) Vrste izraza aritmetički logički tekstualni Pogledati udžbenik, strana 53, primer 6 Razmena vrednosti dve promenljive

Procedure ulaza i izlaza 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

Učitavanje podataka read(A1, A2,... An) readln(A1, A2,... 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

Izlaz podataka write(A1, A2,... An) writeln(A1, A2,... 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