Отпремање презентације траје. Молимо да сачекате

Отпремање презентације траје. Молимо да сачекате

Програмски језик Parallaxis (2)

Сличне презентације


Презентација на тему: "Програмски језик Parallaxis (2)"— Транскрипт презентације:

1 Програмски језик Parallaxis (2)
Потпрограми општег типа. Функцијски потпрограми.

2 Потпрограми општег типа
PROCEDURE Ime_pp(deklaracija argumenata); --- deklaracija lokalnih promenljivih BEGIN --- telo potprograma END Ime_pp;

3 Потпрограми општег типа
При декларацији аргумената за сваки аргумент се наводи: кључна реч VAR за позив по референци, име аргумента, знак ‘:’ и тип аргумента. Декларације аргумената одвајају се знаком ‘;’.

4 Потпрограми општег типа
У језику Parallaxis постоји 28 стандардних потпрограма општег типа. Користићемо следеће ознаке ord – набројиви, изведени и целобројни типови података; elem – тип елемента скупа; skup – тип SET OF elem; niz – променљиве типа ARRAY OF char.

5 Потпрограми општег типа
DEC(SCALAR VAR x: ord) DEC(VECTOR VAR x: ord) Умањује вредност променљиве x за 1 или додељује променљивој вредност њеног непосредног претходника.

6 Потпрограми општег типа
DEC(SCALAR VAR x:ord;SCALAR n:INTEGER) DEC(VECTOR VAR x:ord;VECTOR n:INTEGER) Умањује вредност променљиве x за n или додељује променљивој вредност њеног n-тог претходника.

7 Потпрограми општег типа
INC(SCALAR VAR x: ord) INC(VECTOR VAR x: ord) Увећава вредност променљиве x за 1 или додељује променљивој вредност њеног непосредног следбеника.

8 Потпрограми општег типа
INC(SCALAR VAR x:ord;SCALAR n:INTEGER) INC(VECTOR VAR x:ord;VECTOR n:INTEGER) Увећава вредност променљиве x за n или додељује променљивој вредност њеног n-тог следбеника.

9 Потпрограми општег типа
EXCL(SCALAR VAR x:skup;SCALAR y:elem) EXCL(VECTOR VAR x:skup;SCALAR y:elem)) Уклања елемент y из скупа x.

10 Потпрограми општег типа
INCL(SCALAR VAR x:skup;SCALAR y:elem) INCL(VECTOR VAR x:skup;SCALAR y:elem) Уводи елемент y у скуп x.

11 Потпрограми општег типа
Write(SCALAR c:char) Знак c се шаље на активни излазни канал.

12 Потпрограми општег типа
WriteInt(SCALAR i:INTEGER;SCALAR n:CARDINAL) Слање целог броја i на активни излазни канал са записом од n знакова. WriteCard(SCALAR i,n:CARDINAL) WriteReal(SCALAR r:REAL;SCALAR n:CARDINAL) WriteFixPt(SCALAR r:REAL;SCALAR n,p:CARDINAL) WriteBool(SCALAR b:BOOLEAN) WriteString(SCALAR s:niz) Writeln

13 Потпрограми општег типа
Read(SCALAR VAR c:CHAR) ReadInt(SCALAR VAR i:INTEGER) ReadCard(SCALAR VAR c:CARDINAL) ReadReal(SCALAR VAR r:REAL) ReadBool(SCALAR VAR b:BOOLEAN) ReadString(SCALAR VAR s:niz)

14 Потпрограми општег типа
OpenInput(SCALAR s:niz) OpenOutput(SCALAR s:niz) CloseInput CloseOutput

15 Функцијски потпрограми
PROCEDURE Ime_pp(dekl_arg): dekl_rez; --- deklaracija lokalnih promenljivih BEGIN --- telo potprograma RETURN(rezultat); END Ime_pp;

16 Функцијски потпрограми
Декларација аргумената је иста као и код потпрограма општег типа осим што не постоји кључна реч VAR. У декларацији резултата наводи се да ли је резултат скаларни или векторски, као и тип резултата. Аргумент наредбе RETURN је излазни аргумент потпрограма и може бити променљива или израз.

17 Функцијски потпрограми
У програмском језику Parallaxis постоје 32 стандардна функцијска потпрограма. Осим раније коришћених ознака користићемо и: tip – име типа податка port – име порта

18 Функцијски потпрограми
COS(SCALAR r:REAL):SCALAR REAL; COS(VECTOR r:REAL):VECTOR REAL; SIN(SCALAR r:REAL):SCALAR REAL; SIN(VECTOR r:REAL):VECTOR REAL; TAN(SCALAR r:REAL):SCALAR REAL; TAN(VECTOR r:REAL):VECTOR REAL; ARCSIN(SCALAR r:REAL):SCALAR REAL; ARCSIN(VECTOR r:REAL):VECTOR REAL; ARCCOS(SCALAR r:REAL):SCALAR REAL; ARCCOS(VECTOR r:REAL):VECTOR REAL;

19 Функцијски потпрограми
ARCTAN(SCALAR r:REAL):SCALAR REAL; ARCTAN(VECTOR r:REAL):VECTOR REAL; у опсегу [-/2, +/2] ARCTAN2(SCALAR r1,r2:REAL):SCALAR REAL; ARCTAN2(VECTOR r1,r2:REAL):VECTOR REAL; arctg(r1/r2)  [-, +]

20 Функцијски потпрограми
EXP(SCALAR r:REAL):SCALAR REAL; EXP(VECTOR r:REAL):VECTOR REAL; LN(SCALAR r:REAL):SCALAR REAL; LN(VECTOR r:REAL):VECTOR REAL; SQRT(SCALAR r:REAL):SCALAR REAL; SQRT(VECTOR r:REAL):VECTOR REAL;

21 Функцијски потпрограми
ABS(SCALAR x:INTEGER):SCALAR CARDINAL; ABS(VECTOR x:INTEGER):VECTOR CARDINAL; ABS(SCALAR x:REAL):SCALAR REAL; ABS(VECTOR x:REAL):VECTOR REAL; FLOAT(SCALAR i:INTEGER):SCALAR REAL; FLOAT(VECTOR i:INTEGER):VECTOR REAL; TRUNC(SCALAR r:REAL):SCALAR INTEGER; TRUNC(VECTOR r:REAL):VECTOR INTEGER;

22 Функцијски потпрограми
CAP(SCALAR c:CHAR):SCALAR CHAR; CAP(VECTOR c:CHAR):VECTOR CHAR; Претвара знак у велико слово. CHR(SCALAR i:INTEGER):SCALAR CHAR; CHR(VECTOR i:INTEGER):VECTOR CHAR; ORD(SCALAR i:ord):SCALAR INTEGER; ORD(VECTOR i:ord):VECTOR INTEGER; ORD(SCALAR i:CHAR):SCALAR INTEGER; ORD(VECTOR i:CHAR):VECTOR INTEGER;

23 Функцијски потпрограми
EVEN(SCALAR i:INTEGER):SCALAR BOOLEAN; EVEN(VECTOR i:INTEGER):VECTOR BOOLEAN; ODD(SCALAR i:INTEGER):SCALAR BOOLEAN; ODD(VECTOR i:INTEGER):VECTOR BOOLEAN; MAX(TIP ord):SCALAR ord; Највећи елемент који припада типу ord. MIN(TIP ord):SCALAR ord; Најмањи елемент који припада типу ord.

24 Функцијски потпрограми
SIZE(SCALAR x:TIP):SCALAR INTEGER; SIZE(VECTOR x:TIP):VECTOR INTEGER; Враћа број меморијских локација које заузима променљива x.

25 Функцијски потпрограми
STRCMP(SCALAR s1,s2:niz):SCALAR INTEGER; STRCMP(VECTOR s1,s2:niz):VECTOR INTEGER; Пореди знаковне низове s1 и s2; резултат поређења је +1, 0 или -1 у зависности од тога да ли је низ s1 у лексикографском смислу већи, једнак или мањи од низа s2. STREQ(SCALAR s1,s2:niz):SCALAR BOOLEAN; STREQ(VECTOR s1,s2:niz):VECTOR BOOLEAN; Пореди знаковне низове s1 и s2; враћа TRUE ако је s1 у лексикографском смислу већи од низа s2; иначе FALSE.

26 Функцијски потпрограми
SBRANDOM():SCALAR BOOLEAN; VBRANDOM():VECTOR BOOLEAN; SCRANDOM():SCALAR CHAR; VCRANDOM():VECTOR CHAR; SIRANDOM():SCALAR INTEGER; VIRANDOM():VECTOR INTEGER; SRRANDOM():SCALAR REAL; VRRANDOM():VECTOR REAL;

27 Функцијски потпрограми
VAL(TIP ord;SCALAR n:INTEGER):SCALAR ord; VAL(TIP CHAR;SCALAR n:INTEGER):SCALAR CHAR; VAL(TIP ord;VECTOR n:INTEGER):VECTOR ord; VAL(TIP CHAR;VECTOR n:INTEGER):VECTOR ord; Преводи цео број n у одговарајући елемент редног типа. Важи ORD(VAL(ord,n)) = n VAL(CHAR,n) = CHAR(n)

28 Функцијски потпрограми
IN_Connected(PORT ul_port):VECTOR BOOLEAN; OUT_Connected(PORT izl_port):VECTOR BOOLEAN; IN_LineConnected(PORT izl_port,ul_port):VECTOR BOOLEAN; OUT_LineConnected(PORT izl_port,ul_port):VECTOR BOOLEAN;


Скинути ppt "Програмски језик Parallaxis (2)"

Сличне презентације


Реклама од Google