Mavzu: O’zgaruvchilarning belgili va matn ko’rinishlari.
Amaliy dasturlar va ulardan turli sohalarda foydalanish
Paskalda belgili va satrli miqdorlar bilan ishlash uchun maxsus funksiya hamda protseduralar kiritilgan. Keyingi sahifadagi jadvalda ularning ba’zilari keltirilgan.
Shuni ta’kidlash joizki, dasturda funksiyalar qo‘llanilganda ularning qiymati biror o‘zgaruvchiga o‘zlashtiriladi, protse-duralar ishlatilganda esa o‘zlashtirish operatorisiz yoziladi.
Endi sodda misollar ko‘rib chiqiladi.
Yozilishi
|
Vazifasi
|
|
|
|
Standart funksiyalar
|
|
|
Concat(S1,S2,
|
S1, S2,...,SN satrli (belgili) o‘zgar vchilar
|
...,SN)
|
(o‘zgarmaslar)ni bir-biriga ketma-ket laydi
|
|
|
Length(S)
|
S satrning z nligi (belgilari soni)ni aniqlaydi
|
|
|
Pos(b,S)
|
S satr ichidan b so‘zni izlaydi
|
|
|
Copy(S,n1,n2)
|
S satrning n1 belgisidan boshlab n2 ta belgining n sxasini
|
oladi
|
|
|
|
Ord(B)
|
B belgining ASCII kodini aniqlab beradi
|
|
|
Chr(a)
|
ASCII kodi a ga teng belgini aniqlaydi
|
|
|
|
Standart protseduralar
|
Delete(S,n1,n2)
|
S satrning n1 belgisidan boshlab n2 ta belgisini olib tashlaydi
|
|
|
Insert(S1,S,n)
|
S satrga n-o‘rindan boshlab S1 satrni joylashtiradi
|
|
|
Str(a,S)
|
S satrli o‘zgar vchining qiymati a sonning satr
|
ko‘rinishidagi ifodasiga teng bo‘ladi
|
|
|
|
|
a sonli o‘zgar vchining qiymati S satrli o‘zgar vchining son
|
Val(S,a,c)
|
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)
|
|
|
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 ham kerakli natijani beradi.
a='informatika' bo‘lsa, n:=Length(a); operatori baja-rilganda n ning qiymati 11 ga teng bo‘ladi.
a:=Pos('m', 'informatika'); operatori bajarilganda a ning qiymati 6 ga, a:=Pos('ma', 'informatika'); operatori bajarilganda ham a 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.
a:=Copy('informatika',3,5); operatori bajarilsa, a ning qiymati 'forma’ so‘ziga teng bo‘ladi.
5. a:='A' bo‘lsa, Ord(a) funksiyaning qiymati 65 ga teng bo‘ladi. Chunki 'A' (lotin) harfining ASCII kodi 65. Ord funksiyasining argumenti o‘zgarmas bo‘lsa, u apostrof ichida yoziladi. Masalan, Ord('A').
6. cod:=65 bo‘lsa, Chr(cod) funksyasining qiymati lotin 'A' harfiga, Chr(66) funksiyasining qiymati esa lotin 'B' harfiga teng bo‘ladi.
7. a:='bajarilmadi' bo‘lsa, Delete(a,8,2); protsedurasi bajaril-gach natija a:='bajarildi' bo‘ladi. Buni sxematik ko‘rinishda quyidagicha tasvirlash mumkin:
(a:='bajarilmadi' à Delete(a,8,2); à 'bajarilmadi' à a:='bajarildi')
8. 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')
9. a:=765 bo‘lsa, Str(a,s); protsedurasi bajarilgach, s:='765' bo‘ladi.
10. 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.
Endi ko‘rib chiqilgan funksiya va protseduralarni amalda qo‘llashga misollar keltiriladi:
1-misol. Berilgan 'mustaqil ','O‘zbekiston ', 'davlat' so‘zlaridan 'O‘zbekiston – mustaqil davlat' iborasini hosil qiluvchi dastur tuzing.
Yechish. Berilgan so‘zlar dastur ishlashi davomida o‘zgartirilmay-di. Shu sababli ular konstanta sifatida ifodalanadi.
Do'stlaringiz bilan baham: |