LABORATORIYA MASHG’ULOTI. DASTUR TUZISH MUHITINING
ASOSIY KOMPONENTLARINING XOSSALARI.
Delphi dasturlash tili tez dastur tuzish tizimlariga mansub bo’lib,
juda qiziqarli va ahamiyatga molik bo’lgan vizual komponentlar qutubxonasiga
ega. Bu komponentlar dasturchi ish faoliyatida qator qulayliklar yaratadi.
Komponentlar tuzilishi va qo’llanilishi bo’yicha oddiydan to murakkab
vazifalarni bajarishga mo’ljallangan. Agarda biror funksiyani bajaruvchi
komponent Delphi kutubxonasi tarkibida
mavjud bo’lmasa, bu komponent Delphi vositalari yordamida yaratilishi yoki
bevosita Internet orqali olinishi mumkin. SHuningdek, sodda dasturlar tuzish
uchun forma, loyiha va modul
strukturasi, dastur elementlari, tiplar,
Delphi dasturlash tilining operatorlari,
massivlar haqidagi tushunchalarni o’zlashtirish shart. Quyida
ListBox komponenti yordamida komponentlardan
foydalanish yo’llarini ko’rib o’tamiz:
|
Komponentning ko’rinishi ( Standard bo’limida joylashgan ). |
Name |
Komponentning nomi va u dasturda komponent xossalaridan foydalanish
uchun ishlatiladi. |
Items |
Ro’yxat elementlari |
ItemIndex |
Ro’yxatning tanlangan elementi tartib raqami va birinchi elementning tartib raqami nol’ga teng |
Left |
Komponentning chap chegarasidan formaning chap chegarasigacha bo’lgan
masofa |
Top |
Komponentning yuqori chegarasidan formaning yuqori chegarasigacha
bo’lgan masofa |
Heght |
Komponentning balandligi |
Width |
Komponentning kengligi |
Font |
Ro’yxatning elementlarini aks ettiruvchi shrift |
2. Forma uchun quyidagi proseduraning aniqlang:
procedure
TForm1.FormCreate(Sender: TObject);
begin
ListBox1.Font.Size:=18;//
Ro’yxatdagi shriftning o’lchami
listBox1.Font.Color:=clred;
//Ro’yxatdagi shriftning rangi
listbox1.Items.Add('Mediana');
//Ro’yxatning birinchi elementi
listbox1.Items.Add('Bissektrissa');//Ro’yxatning ikkinchi elementi
listbox1.Items.Add('vatarga
perpendikulyar diametr xossasi');// Ro’yxatning uchinchi elementi
listbox1.Items.Add('Burchak
bissektrissasining xossasi');// Ro’yxatning to’rtinchi elementi
listbox1.Itemindex:=0;
end; end.
Mazkur prosedura forma uchun yaratiladi, ya’ni formaga ListBox komponenti o’rnatiladi va u dastur bajarilishi bilan foydalanuvchiga quyida ko’rsatilgan ro’yxatni tavsiya etadi.
Eslatib o’tish lozimki bu ro’yxatni davom ettirish mumkin va keyingi bosqichda
ro’yxat elementini tanlagan foydalanuvchi
elementning xossalari yoki xossaning grafik ko’rinishi bilan tanishishi
lozim.
Ikkinchi bosqichda formaga -Button
komponentini joylashtiramiz va uning uchun quyidagi prosedurani aniqlashni yo’lga qo’yamiz:
procedure
TForm1.Button1Click(Sender: TObject);
var xossa:string;
begin
image1.Hide;
case
ListBox1.ItemIndex of
0: xossa:='Uchburchakning qarshi tomonini teng
ikkiga bo''luvchi kesma';
1: xossa:='Uchburchakning tegishli burchak
qiymatini teng ikkiga bo''luvchi kesma';
2: xossa:='vatarga perpendikulyar diametr
vatarni va diametrni teng ikkiga bo''ladi';
3: xossa:='Burcak bissektrissasining ixtiyoriy
nuqtasidan uning tomonlarigacha bo''lgan masofa tengdir';
end; label1.Font.size:=10; Label1.caption:= xossa; end;
SHuningdek, ro’yxatning har bir elementi uchun uchun rasmlar tayyorlab, qo’yidagi prosedura yordamida dastur imkoniyatlarini kuchaytirish mumkin.
procedure
TForm1.Button2Click(Sender: TObject);
begin
image1.Show;
case ListBox1.ItemIndex of
0:form1.Image1.Picture.LoadFromFile('c:\12.bmp');
1:form1.Image1.Picture.LoadFromFile('c:\12.bmp');
………………………
end;end.
3. ComboBox komponenti xosalarini o’rganish uchun quyidagi dasturni loyihalashtirish va bajarib xulosalar chiqarish tavsiya etiladi.
procedure
TForm1.Button1Click(Sender: TObject);
var x,y,z:real;
begin
x:=strtofloat(edit1.text);
y:=strtofloat(edit2.text);
case combobox1.itemindex of
0: z:=x+y;
1: z:=x-y;
2: z:=x/y;
3: z:=x*y; end;
if
combobox1.itemindex =0 then label1.caption:=Label1.Caption+'summasi='+floattostr(z)+#13
else if combobox1.itemindex =1 then
label1.caption:=Label1.Caption+'ayirmasi='+floattostr(z)+#13 else if
combobox1.itemindex =2 then
label1.caption:=Label1.Caption+'bo''linmasi='+floattostr(z)+#13 else
if combobox1.itemindex =3 then
label1.caption:=Label1.Caption+'ko''paytmasi='+floattostr(z)+#13;
end;end.
Mustaqil ishlash uchun vazifalar.
1.
Kiritilgan
N natural son uchun uning tub bo’luvchilarini aniqlash dasturini tuzing.
2.
1
dan 1000 gacha bo’lgan tub sonlarni aniqlovchi dastur tuzing.
3.
Barcha
uch xonali sonlardan 7-raqami qatnashuvchi va 7-ga bo’linuvchilarini aniqlovchi
dastur tuzing.
4.
25
ta natural sonni tasodufiy holatda yarating va uni 5x5 o’lchamdagi StringGrid
komponentining yacheykalariga
joylashtiring.
5.
25
ta natural sonni tasodufiy holatda yarating va uni 1x25 o’lchamdagi StringGrid
komponentining yacheykalariga orta borish tartibida joylashtiring.
6.
1
dan 10 gacha bo’lgan o’nli kasrlarni tasodufiy yaratib, ularni foydalanuvchidan
ikkitasini summasini kiritishni (25
marotaba) talab etuvchi va «5» balli tizimda baholash dasturini tuzing.
7. 100 ta tasodufiy yaratilgan sonlarning [a,b] oraliqga tegishlilarini chop etuvchi dastur yarating.
9.
E(x,u)
nuqtaning markazi (-5;5) da joylashgan va radiusi 20 ga teng aylanaga nisbatan
qanday joylashganligini aniqlash dasturini tuzing.
10.
Uchta
to’g’ri chiziqlar quyidagicha berilgan: akx+bky=ck
(k=1,2,3) . Agar bu to’g’ri chiziqlar o’zaro kesilib uchburchak hosil qilishsa bu uchburchak yuzasini
aniqlang.
11.
Barcha
to’rt xonali sonlardan 17-ga bo’linuvchi, ammo 3,5,7 larga bo’linmaydiganlari
aniqlovchi dastur tuzing.
12.
u=sin
x+ sin 3x+....+sin 101x funksiya qiymatini hisoblash dasturini yarating.
Комментарии
Отправить комментарий