Mirsaid Aripov, Nurillo Otaxanov


-listing. Tartiblangan ro`yxatga yangi element qo`shish



Download 9,81 Mb.
bet111/209
Sana16.01.2022
Hajmi9,81 Mb.
#371485
1   ...   107   108   109   110   111   112   113   114   ...   209
Bog'liq
DELPHI dasturlash titli 2018

9.5-listing. Tartiblangan ro`yxatga yangi element qo`shish

type

TPStudent  ^TStudent;  TStudent tipidagi ko`rsatkich

TStudent  record

f_name:string[20];  familiya

l_name: string[20];  ismi

next: TPStudent;  ro`yxatning keytingi elementi

end;



9.10-rasm. Tartiblangan dinamik ro`yxat2 dasturining dialog oynasi
var

head: TPStudent; ro`yxatning boshlanishi

ro`yxatning boshlanishiga yangi element qo`shish



procedure TForm1.Button1Click(Sender: TObject);

var node: TPStudent;  ro`yxatning yangi tuguni

curr: TPStudent;  ro`yxatning joriy tuguni

avv: TPStudent;  curr dan oldin turadigan tugun

begin

new(node);  ro`yxat yangi elementini hosil qilish

node^.f_name : Edit1.Text;  familiya

node^.l_name : Edit2.Text;  ismi

 tugunni ro`yxatga qo`shish

 dastlab ro`yxatdan tugunga mos joyni aniqlaymiz

while (curr <> NIL) and (node.f_name > curr^.f_name) do

begin

 kiritilgan qiymat joriy elementdan katta



avv : curr;

Curr : curr^.next;  navbatdagi tugunga

end;

if avv  NIL then begin

 yangi elementni ro`yxat boshiga o`tkazish



node^. Next : head; head : node;

end

else begin

 yangi tugun avv dan keyin, ammo curr dan oldin



node^.next : avv^.next;

avv^.next : node;

end;

Edit1.text : ''; Edit2.text : '';

Edit1.SetFocus;

end;

 ro`yxatni ekranga chiqarish



procedure TForm1.Button2Click(Sender: TObject);

var curr: TPStudent; ro`yxatning joriy elementi

n:integer;  ro`yxat elementlari soni

st:string;  ro`yxatning satrli ko`rinishi

begin n : 0; st : '';

curr : head; ro`yxatning birinchi elementi

while curr <> NIL do begin

n : n  1;

st : st  curr^.f_name  ' '  curr^.l_name  #13;

curr : curr^.next;  ro`yxatning keyingi elementini ko`rsatish

end;

if n <> 0 then ShowMessage('Ro`yxat:'  #13  st)

else ShowMessage('ro`yxatda elementlar yo`q.');

end;

procedure TForm1.FormActivate(Sender: TObject);

begin

head : NIL;  ro`yxat bo`sh

end;

end.

Tform1.Button1Click protsedurasi dinamik o`zgaruvchi-yozuvni hosil qiladi, unga interfeys oynalaridagi ma`lumotlarni qiymat qilib beradi, bu tugun-ma`lumot uchun tartiblangan ro`yxatdan joy aniqlaydi va yangi elementdan avval turgan tugunning next ko`rsatkichiga tuzatmalar kiritib ro`yxatga qo`shadi.

Ro`yxatni ekranga Tform1.Button2Slick protsedurasi chiqaradi. Dastur ishga tushganidan so`ng, familiyalar tartibsiz kiritilganidan keyin, tartiblangan ro`yxatning ko`rinishi 9.11-rasmda keltirilgan.




Download 9,81 Mb.

Do'stlaringiz bilan baham:
1   ...   107   108   109   110   111   112   113   114   ...   209




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish