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.


Комментарии

Популярные сообщения из этого блога