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
|
ех (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) oraliqdagi tasodifiy son
| 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 “rost” qiymat oladi
|
Chr(x)
|
Byte
|
Char
|
x ning o’nlik ASCII kodiga mos belgi
|
Ord(m)
|
Char
|
Byte
|
‘m‘ belgining o’nlik ASCII kodi
|
1–misol. Ba’zi funksiyalarni qo’llanishiga misollar.
Funksiya
|
Qiymati
|
Funksiya
|
Qiymati
|
Funksiya
|
Qiymati
|
abs(-5)
|
5
|
abs(-4.9)
|
4.9000000000e+00
|
abs(4.9)
|
4.9000000000e+00
|
sqr(4)
|
16
|
sqr(2.5)
|
6.2500000000e+00
|
Sqrt(16)
|
4.0000000000e+00
|
sqr(-4)
|
16
|
Sqr(0.0)
|
0.0000000000e+00
|
Sqrt(0.16)
|
4.0000000000e–01
|
sqr(0)
|
0
|
Sin(0)
|
0.0000000000e+00
|
Sin(1)
|
8.4147098481e–01
|
Trunk(5.3)
|
5
|
Int(5.3)
|
5.0000000000e+00
|
Int(5)
|
5.0000000000e+00
|
Trunk(–5.3)
|
–5
|
Int(–5.3)
|
–5.0000000000e+00
|
frac(5.3)
|
3.0000000000e–01
|
Round(5.49)
|
5
|
frac(–5.3)
|
–3.0000000000e–01
|
frac(5)
|
0.0000000000e+00
|
Round(5.5)
|
6
|
Odd(5)
|
TRUE
|
Odd(–5)
|
TRUE
|
Round(–5.49)
|
–5
|
Odd(4)
|
FALSE
|
Odd(–4)
|
FALSE
|
Round(–5.5)
|
–6
|
Odd(0)
|
FALSE
|
Chr(65)
|
‘A‘
|
Chr(97)
|
‘a‘
|
Ord(‘A‘)
|
65
|
Ord(‘a‘)
|
97
|
Matematik formulalarda ko‘p ishlatiladigan π sonini ifodalash uchun Paskalda maxsus Pi o‘zgarmas (konstanta) ajratilgan (Pi=3.1415…).
Paskal dasturlash tilida algebraik ifodalar arifmetik amal belgilari yordamida bog‘langan o‘zgarmaslar, o‘zgaruvchilar va funksiyalardan tashkil topadi. Algebraik ifodalar bir satrda yoziladi, ya’ni satrdan pastga tushirib yoki yuqoriga ko‘tarib yozish mumkin emas. Masalan, 3ab2 ifoda Paskalda 3*a*sqr(b) yoki 3*a*b*b kabi, ifoda a/sqr(b) yoki a/(b*b) kabi yoziladi.
Ifodalarni yozishda amallarni bajarish tartibini ko‘rsatish uchun faqat oddiy qavslar ishlatiladi. Qavs ichidagi amallarni bajarish chapdan o‘ngga qarab, matematikada qabul qilingan tartibni saqlangan holda ketma-ket amalga oshiriladi:
funksiyalar qiymatlari hisoblanadi;
ko‘paytirish yoki bo‘lish amali bajariladi;
qo‘shish yoki ayirish amali bajariladi.
Masalan, arifmetik ifodani Paskaldagi yozilishi (a+b)/c kabi bo‘lib, uni hisoblashda dastlab qavs ichidagi amal, ya’ni a+b bajariladi, so‘ngra natija c ga bo‘linadi. Amallar bajarilish tartibi ham qavslar yordamida tartiblanadi: ifodani Paskalda sqrt(sqr(a) – sqr(b)) kabi, |x + tgx| ifoda abs(x + tan(x)) ko‘rinishida yoziladi.
2–misol. R va H o‘zgaruvchilarning ma’lum qiymatlarida ifodaning qiymati hisoblansin:
Bu ifoda Paskalda Pi*sqr(r)*h/3 kabi yoziladi. Bunda amallar quyidagi tartibda bajariladi:
sqr(r)
Pi*sqr(r)
Pi*sqr(r)*h
Pi*sqr(r)*h/3
Albatta, ikkita arifmetik amal ketma-ket kelganda ifodani qavs bilan yozish mumkin. Masalan: 5*(–1) yoki a+(–b).
Ba’zi hollarda Paskal dasturlash tilida yozilgan ifodani odatdagi matematik ko‘rinishda yozish talab etiladi. Masalan, Paskal dasturlash tilida yozilgan 0.5*(sin(x)+cos(x)) ifoda matematik ko‘rinishda quyidagicha bo’ladi:
Paskalning standart funksiyalari barcha matematik amallarni o‘z ichiga olmagan. Shu sababli ba’zi matematik amallarni Paskalning bir nechta standart funksiyasi orqali yoki bitta standart funksiyani bir necha marta qo‘llash orqali ifodalashga to‘g‘ri keladi. Masalan, Paskalda sonni ixtiyoriy darajaga ko‘tarish funksiyasi yo‘q. Shuning uchun a3 ifodani Paskalda a*a*a yoki sqr(a)*a kabi, a4 ifodani esa a*a*a*a yoki sqr(sqr(a)) yoki sqr(a)*sqr(a) kabi yozish mumkin.
Umuman, ab (a>0) ko‘rinishdagi ifoda uchun matematikada ab = eb·ln a formula o‘rinli. Shuning uchun Paskalda ab (a>0) ifoda exp(b*Ln(a)) ko‘rinishda yoziladi.
3–misol. algebraik ifodani Paskaldagi ko‘rinishini yozing.
Yechish: Bu ifodani Paskalda bir necha xil usulda tasvirlash mumkin. Shulardan bittasi quyidagicha:
(x-y)/(exp(5*ln(x))-sqr(y)*y).
Shuni yodda tutingki, Paskal dasturlash tilidagi standart funksiyalari argumenti doimo qavs ichida yoziladi!
4. Darsni mustahkamlash va yakunlash:
1. Standart funksiyalarga misollar keltiring?
2. Standart funksiya deb nimaga aytiladi?
3. Biror ifodada bir xil amallar qatnashsa, ularning bajarilish tartibi qanday bo‘ladi?
4. Amallarni bajarish tartibini o‘zgartirish uchun nimalardan foydalaniladi?
5. Trunc(4.7)=Round(4.7) o’rinlimi? Javobingizni izohlang.
6. sinx–c ko‘rinishidagi yozuv Paskalda nima uchun xato hisoblanadi?
7. 2*-v ko‘rinishidagi yozuv Paskalda to‘g‘ri yozilganmi? Javobingizni izohlang.
8. sqr(abs(x +sin(x))-pi) ifodada amallar bajarilish tartibini izohlang.
Mashqlar
1. Quyidagi algebraik ifodalarni Paskal dasturlash tilida yozing.
a) ax+b b) xyz–23 d) ax2+bx+c e) a4x3-(1-y2)2
f) g) 8(a+b2c) h) i) (45z+q3)(-5m+10)
2. Quyidagi ifodalarni Paskal dasturlash tilida yozing.
a) 2520+|1-y2| d) xsina+ycosb-52 b) [5m]+{100b} e) sinsinx+cossiny
5. O'quvchilarni baholash: Faol qatnashgan o’quvchilarni baholash va ularni jurnalga qayd etish.
6. Uyga topshiriq: 54-bet 4-5-mashqlarni bajarish.
Dostları ilə paylaş: |