Mirsaid Aripov, Nurillo Otaxanov


-listing. Uchburchak yasash protsedurasi



Download 9,81 Mb.
bet68/209
Sana16.01.2022
Hajmi9,81 Mb.
#371485
1   ...   64   65   66   67   68   69   70   71   ...   209
Bog'liq
DELPHI dasturlash titli 2018

8.5-listing. Uchburchak yasash protsedurasi
procedure uchburchak(a, b, c : real);

{z- ma`lumotlarni ekranga chiqarishga tayyorgarlik}

var

ok : boolean; // ok=True - mavjud, ok = False - mavjud emas

p : real; // yarim perimetr

begin

yuza:=0;

z := ' ';

z:=floattostr(a)+ ' ' +floattostr(b)+ ' ' +floattostr(c);

if (a+b>c) and (a+c>b) and (b+c>a)

then begin

ok := true;

p:=(a+b+c)/2;

yuza:=sqrt(p * (p - a) * (p - b) * (p - c));

end

else ok:=false;

if ok then

z:=z+' '+'uchburchak mavjud. Uning yuzasi='+floattostr(yuza)

else z:=z+ ' ' +'uchburchak mavjud emas';

s2:=s2+z+#13;

um_yuza:=um_yuza+yuza;

end;

Protseduralar implementation bo`limida undan foydalanuvchi dasturdan avval ko`rsatilishi lozim. Protseduraga murojaat qilish buyrug’i quyidagicha yoziladi:



Nom (Parametrlar ro`yxati);

bu yerda Nom – chaqirilayotgan protsedura nomi; (Parametrlar ro`yxati) –joriy o`zgaruvchilar.

Protseduraga murojaat qilganda joriy o`zgaruvchi sifatida o`zgaruvchi, konstanta yoki ifoda kelishi mumkin. Masalan, kvadrat tenglamaga murojaat qilinganda

uchburchak(StrToFloat(Edit1.Text), StrToFloat(Edit2.Text),

StrToFloat(Edit3.Text), k1, k2, nat);

yoki


uchburchak (a, b, c);

yoki


uchburchak (2.5, b, 3.45);

ko`rinishidagi yozuvlardan foydalanish mumkin.

2-masala: To`rtta p, q, r, t haqiqiy sonlar berilgan. Ulardan hosil qilingan uchliklar orasidan uchburchak yasash mumkin bo’lganlarini toping. Agar uchburchak yasash mumkin bo`lsa, bu uchburchaklarning umumiy yuzini toping.

Yechish g’oyasi: Berilgan to`rtliklardan (p, q, r), (p, q, t), (q, r, t) va (p, r, t) uchliklarni hosil qilish mumkin. Ixtiyoriy uchlikdan uchburchak yasash mumkinligi yuqoridagi protsedura yordamida tekshiriladi.

8.6-listing. Uchburchak yasash mumkinligi haqida dastur

procedure TForm1.Button1Click(Sender: TObject);

var um_yuza, p,q,r,t:real;

s1,s2 : string;

procedure uchburchak(a, b, c : real);

{z- ma`lumotlarni ekranga chiqarishga tayyorgarlik}

var

ok : boolean; // ok=True - mavjud, ok = False - mavjud emas

p : real; // yarim perimetr

begin

yuza:=0;

z := ' ';

z:=floattostr(a)+ ' ' +floattostr(b)+ ' ' +floattostr(c);

if (a+b>=c) and (a+b>=c) and (b+c>=a)

then begin

ok := true;

p:=(a+b+c)/2;

yuza:=sqrt(p * (p - a) * (p - b) * (p - c));

end

else ok:=false;

if ok then

z:=z+' '+'uchburchak mavjud. Uning yuzasi='+floattostr(yuza)

else z:=z+ ' ' +'uchburchak mavjud emas';

s2:=s2+z+#13;

um_yuza:=um_yuza+yuza;

end;

begin

s2 : '';

p : strtofloat(edit1.text);

q : strtofloat(edit2.text);

r : strtofloat(edit3.text);

t : strtofloat(edit4.text);

uchburchak(p, q, r);

uchburchak(p, q, t);

uchburchak(p, r, t);

uchburchak(q, r, t);

s : s  #13 'Umumiy yuza '  floattostr(um_yuza);

label6.caption : s;

end;

procedure TForm1.FormCreate(Sender: TObject);

begin

um_yuza : 0;

s2 : '';

end;

end.

Bu yerda asosiy dasturdan protseduraga tushadigan formal o`zgaruvchilar protsedura sarlavhasida ko’rsatilgan. Ammo, protseduradan asosiy dasturga qaytishi kerak bo`lgan o`zgaruvchilar yozilmagan. Ular dastur matnida, Button1Click protsedurasi matnida keltirilgan. Bu yuza, um_yuza, s2 o`zgaruvchilari global bo`lib, boshlang’ich qiymatlarini FormCreate protsedurasidan oladi. Bu dasturining dialog oynasi 8.4-rasmda tasvirlangan.




Download 9,81 Mb.

Do'stlaringiz bilan baham:
1   ...   64   65   66   67   68   69   70   71   ...   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