Funksiya nomi
|
Argument turi
|
Qiymat turi
|
Izoh
| |
ABS(X)
|
butun/haqiqiy
|
butun/haqiqiy
|
X ning absolyut qiymati (moduli) – |X|
|
SIN(X)
|
butun/haqiqiy
|
haqiqiy
|
X ning sinusi (radian o‘.b.) –sinX
|
COS(X)
|
butun/haqiqiy
|
haqiqiy
|
X ning kosinusi (radian o‘.b.) –cosX
|
ARCTAN(X)
|
butun/haqiqiy
|
haqiqiy
|
X ning arktangensi – arctgX
|
SQRT(X)
|
butun/haqiqiy
|
haqiqiy
|
X ning kvadrat ildizi – (X 0)
|
SQR(X)
|
butun/haqiqiy
|
butun/haqiqiy
|
X ning kvadrati – X2
|
EXP(X)
|
butun/haqiqiy
|
haqiqiy
|
eX (e = 2. 718282. . . )
|
LN(X)
|
butun/haqiqiy
|
haqiqiy
|
X ning natural logarifmi (X> 0)
|
FRAC(X)
|
butun/haqiqiy
|
haqiqiy
|
X ning kasr qismi {X}
|
INT(X)
|
butun/haqiqiy
|
haqiqiy
|
X ning butun qismi [X]
|
RANDOM
|
-
|
haqiqiy
|
[0, 1) oraliqdagi tasodifiy son
|
RANDOM(X)
|
Word
|
Word
|
0..(X–1) oraliqdagi tasodifiy son
|
SWAP(X)
|
2 baytli butun
|
2 baytli butun
|
X ning baytlari o‘rnini almashtiradi
|
EXP(b*LN(a))
|
butun/haqiqiy
|
|
ab
|
Matematik protseduralar
|
INC(X)
|
butun
|
butun
|
X ni qiymatini 1 ga oshiradi (X=X+1)
|
INC(X, N)
|
butun
|
butun
|
X ni qiymatini N ga oshiradi (X=X+N)
|
DEC(X)
|
butun
|
butun
|
X ni qiymatini 1 ga kamaytiradi (X=X–1)
|
DEC(X, N)
|
butun
|
butun
|
X ni qiymatini N ga kamaytiradi (X=X–N)
|
Ekran bilan ishlash protseduralar
|
Clrscr
|
|
|
ekranni tozalaydi va kursorni ekranning yuqori chap burchagiga joylashtiradi.
|
Textcolor
|
|
|
matnning rangini aniqlaydi
|
Textbackground
|
|
|
ekranda xosil bo`luvchi rangni aniqlaydi
|
Gotoxy (i, j)
|
|
|
ekrandagi i qator va j ustundagi nuqtaga kursorni joylashtiradi
|
Insline
|
|
|
kursor turgan qatorni bеlgilardan bo`shatadi
|
Clreol
|
|
|
kursor turgan qatorni o`chiradi
|
Delay (n)
|
|
|
dastur bajarilishini n millisеkundga to`xtatib turadi
|
Sound (m)
|
|
|
dinamikani oldindan bеrilgan m chastotada ishlashini ta'minlaydi
|
Window(x1, y1, x2, y2)
|
|
|
kompyutеr ekranida matn uchun oyna xosil qiladi. Bu еrda x1, y1 – oynaning yuqori chap burchagi, x2, y2 – oynaning pastki o`ng burchagi koordinatalari
| O‘zgaruvchilar turini o‘zgartiruvchi funksiyalar |
TRUNC(X)
|
haqiqiy
|
LongInt
|
X ning butun qismi
|
ROUND(X)
|
haqiqiy
|
LongInt
|
X ni yaxlitlaydi
|
ODD(X)
|
butun
|
mantiqiy
|
X – toq son bo‘lsa natijasi TRUE
|
CHR(X)
|
byte
|
Char
|
X ning o‘nlik ASCII kodiga mos belgi
|
HI(X)
|
butun
|
byte
|
X ning eng yuqori bayti
|
LO(X)
|
butun
|
byte
|
X ning eng quyi bayti
|
HIGH(X)
|
butun/oraliqli
|
butun
|
X ga mos turning eng katta qiymati
|
LOW(X)
|
butun/oraliqli
|
butun
|
X ga mos turning eng kichik qiymati
|
UPCASE(X)
|
Char
|
Char
|
X ni yuqori registrga o‘tkazadi
|
Chr(n)
|
butun
|
Harfiy
|
Kodi n ga teng simvol
|
FloatToStr (n)
|
haqiqiiy
|
satriy
|
Haqiqiy n tasvirlovi satr
|
FloatToStrF(n, f , k, m)
|
|
satriy
|
Haqiqiy n sonni tasvirlovi satr. Bunda: f - format; k - aniqlik; m - kasr qismidagi raqamlar soni
|
StrToInt (s)
|
satriy
|
butun
|
Satrni butun songa o’tkazish
|
StrToFloat (s)
|
satriy
|
haqiqiy
|
Satrni haqiqiy songa o’tkazish
|
IntToStr(k)
|
butun
|
satriy
|
Butun k ni tasvirlovchi satr
|
Round (n)
|
haqiqiy
|
butun
|
Haqiqiy sonni yaxlitlash
|
Trunc (n)
|
haqiqiy
|
butun
|
Haqiqiy son kasr qismini olib tashlash
|
Frac(n)
|
haqiqiy
|
butun
|
Kasrli sonning kasr qismi
|
Int (n)
|
haqiqiy
|
butun
|
Kasr sonning butun qismi
|
Funksiyalar qiymatlarini quyidagi misollar orqali ko‘rish mumkin:
Funksiya
|
Qiymati
|
Funksiya
|
Qiymati
|
ABS(–5)
|
5
|
ABS(–4.9)
|
4.9000000000E+00
|
ABS(5)
|
5
|
ABS(4.9)
|
4.9000000000E+00
|
SQR(4)
|
16
|
SQR(2.5)
|
6.2500000000E+00
|
SQR(–4)
|
16
|
SQR(0.0)
|
0.0000000000E+00
|
SQR(0)
|
0
|
SQRT(16)
|
4.0000000000E+00
|
SQRT(0.16)
|
4.0000000000E–01
|
SIN(0)
|
0.0000000000E+00
|
SIN(1)
|
8.4147098481E–01
|
TRUNC(5.3)
|
5
|
TRUNC(–5.3)
|
–5
|
INT(5.3)
|
5.0000000000E+00
|
INT(5)
|
5.0000000000E+00
|
INT(–5.3)
|
–5.0000000000E+00
|
FRAC(5.3)
|
3.0000000000E–01
|
FRAC(–5.3)
|
–3.0000000000E–01
|
FRAC(5)
|
0.0000000000E+00
|
ROUND(5.49)
|
5
|
ROUND(5.5)
|
6
|
ROUND(–5.49)
|
–5
|
ROUND(–5.5)
|
–6
|
ODD(–5)
|
TRUE
|
ODD(5)
|
TRUE
|
ODD(4)
|
FALSE
|
ODD(–4)
|
FALSE
|
ODD(0)
|
FALSE
|
CHR(65)
|
‘A‘
|
CHR(97)
|
‘a‘
|
ORD(‘a‘)
|
97
|
ORD(‘A‘)
|
65
|
HI(255)
|
0
|
LO(255)
|
255
|
HI(256)
|
1
|
LO(256)
|
255
|
HI(65280)
|
255
|
LO(65280)
|
0
|
SWAP(32897)
|
33152
|
SWAP(256)
|
1
|
Bu funksiyalar qiymatlarini quyidagi misollar orqali ko‘rish mumkin:
Argument
X ning turi
|
Funksiya
|
Qiymati
|
Funksiya
|
Qiymati
|
BYTE
|
HIGH(X)
|
255
|
LOW(X)
|
0
|
INTEGER
|
HIGH(X)
|
32767
|
LOW(X)
|
–32768
|
WORD
|
HIGH(X)
|
65535
|
LOW(X)
|
0
|
LONGINT
|
HIGH(X)
|
2147483647
|
LOW(X)
|
–2147483648
|
ORALIQLI:
‘A‘..‘150‘
|
HIGH(X)
|
‘150‘
|
LOW(X)
|
‘A‘
|
CHAR:
X=‘a‘ yoki X=‘A‘
|
UPCASE(‘a‘)
|
‘A‘
|
UPCASE(‘A‘)
|
‘A‘
|
2. Satr va faylli ma’lumotlarni qayta ishlovchi standart funksiya va protseduralar
Satr, umuman olganda, char turidagi elementlar soni (uzunligi) 0 dan 255 gacha bo‘lgan massivdir. Satrlarni String maxsus so‘zi orqali tavsiflanadi va satr uchun xotiradan uzunligiga nisbatan bir bayt ortiqcha (satr uzunligini saqlash uchun) joy ajratiladi. Paskalning Sistem moduliga belgili va satrli miqdorlar bilan ishlash uchun ko‘pgina funksiya va protseduralar kiritilgan. Quyida biz ularning ba’zilari bilan tanishtiramiz.
Yozilishi
|
Vazifasi
|
Standart funksiyalar
|
CONCAT(S1,S2,…,SN)
|
S1,S2,…,SN satrli (belgili) turdagi o‘zgaruvchilar (o‘zgarmaslar) ni bir biriga ketma-ket ulaydi
|
LENGTH(S)
|
S satrning uzunligini (belgilari sonini) aniqlaydi.
|
POS(B,S)
|
S satr ichidan B belgini (satrni) izlaydi. Misol: B:=’Toshkent’; S:=’kent’; p:=pos(B,S); Javob: p=4. Agar izlanayotgan qator qism qatorda yo`q bo`lsa qiymat nulga teng bo`ladi.
|
COPY(S,N1,N2)
|
S satrning N1-belgisidan boshlab N2 ta belgining nusxasini oladi. Misol: S:=’Toshkent’; p:=Copy(S,4,4); Javob: p=’kent’.
|
Standart protseduralar
|
DELETE(S,N1,N2)
|
S satrning N1-belgisidan boshlab N2 ta belgisini olib tashlaydi. Misol: S:=’Toshkent’; p:=Delete(S,4,4); Javob: p=’Tosh’.
|
INSERT(S1,S,N)
|
S satrga N-o‘rindan boshlab S1 satrni joylashtiradi
|
Str(I; Var S:String)
|
I raqamni simvolga o`tkazish (I-ifoda yoki o`zgaruvchi)
|
Val(S:String; Var P:Integer)
|
S simvolni raqamga o`tkazish (P-o`zgaruvchi);
|
VAL(S,A,C)
|
A sonli o‘zgaruvchining qiymati S satrli o‘zgaruvchining son ko‘rinishidagi ifodasiga, c esa nolga teng bo‘ladi (agar berilgan satrni son ko‘rinishida ifodalab bo‘lmasa, A ning qiymati nolga teng bo‘ladi, C ning qiymati esa noldan farqli bo‘ladi)
|
|
|
Shuni ta’kidlash joizki, dasturda ishlatilgan funksiyalarning qiymati biror o‘zgaruvchiga o‘zlashtiriladi, protseduralar ishlatilganda esa o‘zlashtirish operatorisiz yoziladi. Endi sodda misollarni ko‘rib chiqamiz:
a:=‘Sog`lom tanda ‘, b:=‘sog` aql.‘ bo‘lsa, c:=Concat(a,b); operatori bajarilganda c ning qiymati ‘Sog`lom tanda sog` aql.‘ ga teng. Lekin c:=Concat(a,b);o‘rniga c:=a+b; deb yozish mumkinligini avval ko‘rilgan edi.
a:=‘informatika‘ bo‘lsa, n:=Length(a);operatori bajarilganda n ning qiymati 11 ga teng bo‘ladi, bu vazifani n:=Ord(a[0]) ham bajaradi.
a:=Pos(‘m‘, ‘informatika‘); operatori bajarilganda a ning qiymati 6 ga, a:=Pos(‘ma‘, ‘informatika‘); operatori bajarilganda hama ning qiymati 6 ga, a:=Pos(‘sn‘, ‘sinf‘); operatori bajarilganda a ning qiymati 0 ga,a:=Pos(‘v‘, ‘sinf‘); operatori bajarilganda esa, a ning qiymati 0 ga teng bo‘ladi teng bo‘ladi.
a:=Copy(‘informatika‘,3,5); operatori bajarilsa, a ning qiymati ‘forma‘ so‘ziga teng bo‘ladi.
a:=‘bajarilmadi‘ bo‘lsa, Delete(a,8,2); protsedurasi bajarilgach natija a:=‘bajarildi‘ bo‘ladi. Buni sxematik ko‘rinishda quyidagicha tasvirlash mumkin: ( a:=‘bajarilmadi‘ → Delete(a,8,2); → ‘bajarilmadi‘ → a:=‘bajarildi‘ )
a:=‘bajarildi‘, b:=‘ma‘bo‘lsa, Insert(b,a,8); protsedurasi bajarilgach natija a:=‘bajarilmadi‘ bo‘ladi. Buni sxematik ko‘rinishda quyidagicha tasvirlash mumkin:
(a:=‘bajarildi‘, b:=‘ma‘ → Insert(b,a,8); → ‘bajaril‘+‘ma‘+‘di‘ → a:=‘bajarilmadi‘)
a:=765 bo‘lsa, Str(a,s); protsedurasi bajarilgach, s:=‘765‘ bo‘ladi.
s:=‘123‘ bo‘lsa, Val(s,a,c); bajarilgach, a:=123 va c:=0 bo‘ladi; s:=‘34BMA5‘ bo‘lsa, Val(s,a,c); bajarilgach, a:= 0 va c ≠ 0 bo‘ladi.
Do'stlaringiz bilan baham: |