labaratoriya –22
Mavzu: Pascalda sodda shakllar chizish.
Ishning maqsadi:
Pascalda sodda shakllar chizish bo’yicha bilimlarga ega bo’lish.
NAZARIY QISM
Modullar kompilatsiyasi. TPda modulni o‘z ichiga oluvchi diskdagi faylni nomi bilan uning UNIT
so‘zidan keyin keluvchi nomlar bir xil bo‘lishi shart. Yuqoridagi
misol
da modul – fayl nomi Cmplx.pas
bo‘lishi shart. Modulni kompilatsiya qilish natijasida diskda ‘tpu’ kengaymali obyekt kodli fayl hosil bo‘ladi.
Jumladan Cmplx.pas nomli modul kompilatsiyadan keyin Cmplx.tpu fayli hosil bo‘ladi.
TPda modullarni yoki modullardan foydalanuvchi programmalarni kompilatsiya
qilishning uchta rejimi mavjud bo‘lib, ular modullar bilan qanday bog‘lanishi bilan bir - biridan
farq qiladi: Compile rejimida – foydalaniladigan barcha modullar ‘tpu’ fayl ko‘rinishida
bo‘lishi kerak; Make rejimida – oxirgi kompilatsiyadan keyin tahrir qilingan barcha modullar
qaytadan kompilyatsiya qilinadi va asosiy programmaning ishchi fayliga kiritiladi; Build
rejimida – foydalaniladigan barcha modullar qaytadan kompilyatsiya qilinadi.
Standart modullar.
Foydalanuvchi yaratadigan modullardan tashhari TP standart
modullarga ega. Bular System, Dos, Printer, Graph, Overlay va boshqa modullar. Bu modullar
Turbo.tpl faylida saqlanadi. System moduli barcha programmalarga avtomatik ravishda
qo‘shiladi.
CRT moduli.
CRT abbreviaturasi "Elektron nur trubkasi" mazmunini bildiradi.
Haqiqatan ham, CRT modulida matn ma’lumotni ekranga chiqarish, ekran darchalarini
boshharish, ekrandagi belgilarni va kursorni boshharishning maxsus protsedura va funksiyalari
aniqlangan. Bu moduldagi protsedura va funksiyalar kodi uncha katta bo‘lmasdan-3 Kb tashkil
qiladi va u TURBO.TPL-sistemaviy kutubxona tarkibiga kiradi.
Quyida CRT moduliga kiruvchi asosiy protsedura va funksiyalarni keltiramiz:
Window(X1,Y1,X2,Y2:byte)
-ekranda joriy darchani aniqlash. Window protsedurasi
bajarilgandan keyin ekran ustida bajariladigan barcha amallar ekranning X1, Y1, X2, Y2
koordinatalari bilan berilgan qismiga taalluqli bo‘ladi. Satr va ustunlar hisobi (kursorni
joylashtirish uchun) yangi joriy darcha koordinatasiga nisbatan aniqlanadi va (1,1) koordinatali
yangi darchaning chap yuqori burchagini ko‘rsatadi. Ekranning darchadan tashhari qismi
programmaning ta’sir doirasidan tashharida bo‘ladi.
Shuni ta’kidlash kerakki, Window protsedurasi chaqirilganda koordinatalar "absolut"
qiymatida, ya’ni ekranning real koordinatalari bo‘yicha beriladi (oxirgi matn darchasi
koordinatasi bo‘yicha emas).
Variantlar
Quyidagi masalalar yechimini
Pascal
dasturlash tilidagi dasturi tuzilsin:
1-misol.
uses GraphABC moduli
yordamida ushbu chizmani yasovchi
dastur tuzing. Line(x1, y1,x2 ,y2)
va Circle(x,y,r) protseduralari
yordamida ushbu chizmani hosil
qiling.
2-misol.
Line(x1, y1,x2 ,y2) to’g’ri
chiziq chizish protsedurasi
yordamida uchburchak chizing.
3-misol.
Circle(x,y,r)
protsedurasi yordamida ushbu
chizmani hosil qiling.