Mirsaid Aripov, Nurillo Otaxanov


-listing.  sonini xisoblash



Download 9,81 Mb.
bet44/209
Sana16.01.2022
Hajmi9,81 Mb.
#371485
1   ...   40   41   42   43   44   45   46   47   ...   209
Bog'liq
DELPHI dasturlash titli 2018

4.10-listing.  sonini xisoblash

procedure TForm1.Button1Click(Sender: TObject);

var eps, m, s, t: real ;

n : longint;

begin

eps : strtofloat(edit1.text);

m : -1;

s : 0;

n : 0;

t : 1;   tsiklning kamida bir marta bajarilishi uchun

while abs(t) > eps do begin

n : n 1;   yangi xadning nomeri

m : -m;   (-1) ning navbatdagi darajasi

t : m  (2*n-1);

S : S  t; end;

S : S*4;

label2.caption : floattostr(s)  #13  'Hisoblash ' inttostr(n)  '-chi hadda '  #13  'tugatildi';

end;

Eslatma: Agar tsikl tanasi faqat bitta buyruqdan iborat bo’lsa, u holda while tsiklini

While shart do buyruq;

tarzida yozish mumkin.



4.7. Repeat tsikli

Repeat buyrug’idan ham xuddi while kabi takrorlashlar soni oldindan ma`lum bo`lmagan hollarda foydalanish mumkin. Takrorlashlar soni dasturning bajarilishi davomida aniqlanadi.

Repeat buyrug’i umumiy ko`rinishda quyidagicha yoziladi:

repeat

tsikl tanasi



until shart

Bu yerda shart (mantiqiy ifoda) ning qiymati tsiklni bajarish yoki bajarmaslikni hal qiladi.



Repeat buyrug’i quyidagicha bajariladi:

1. Repeat va until orasidagi tsikl tanasi bajariladi;

2. Mantiqiy ifodaning qiymati xisoblanadi. Agar u yolg’on bo`lsa, 1-qadamga, aks holda 3-qadamga o`tiladi.

3. Tsiklni bajarish to`xtatiladi va navbatdagi buyruqni bajarishga o`tiladi.

Shunday qilib, tsikl tanasi mantiqiy ifodaning qiymati yolg’on (False) bo`lsa, takror va takror bajarilaveradi.

Masala-5: Fibonachchi sonlari formulalar bilan xisoblanadi. Oldindan berilgan K sonidan katta bo`lgan birinchi Fibonachchi sonini toping.

Yehish g’oyasi. Bu masalani hal qilishda quyidagi mulohazaga suyanamiz. K soni yetarlicha katta bo`lib, shuncha Fibonachchi sonlarini saqlash uchun komp’yuter xotirasi kichiklik qilib qolishi mumkin. Demak, oddiy yo`l bilan bu masalani hal qilish qiyin. Boshqacha mulohaza yuritamiz. Formulalardan ko`rinib turibdiki, yangi hadni topishda undan avvalgi ikki haddan foydaniladi holos. Nokerak xadlarni tashlab yuborish mumkin. Bu jarayonni tashkil qilish uchun topilayotgan yangi hadni f2, undan bitta oldingi hadni f1, ikkita oldingi hadni esa f0 o`zgaruvchilar bilan belgilanadi. Bu xolda masala shartida berilgan formula f2=f1+f0 ko`rinishiga keladi. Qaysi had topilayotgan bo`lishidan qat`iy nazar, biz shu belgilashga sodiq qolamiz. Demak, yangi topilgan f2 had o`zidan keyingi yangi had uchun f1, uni topishda qatnashgan f1 esa f0 vazifasini bajaradi. Buni tashkil qilish uchun kerakli almashtirishlarni bajarish talab qilinadi. Ishni boshlash uchun esa f0f11 qiymatlardan foydalaniladi.

4.11-listing.

procedure TForm1.Button1Click(Sender: TObject);

var k, f0, f1, f2: longint;

begin

k : strtoint(edit1.Text);

f0 : 1;

f1 : 1;

repeat

f2 : f1  f0; f0 : f1; f1 : f2;

until f2 > k;

label1.caption : inttostr(f2);

end;

Bu masalani while tsikli bilan ham hal qilish mumkin? Ammo bu usulda tsikl buyruqlarini ikki martadan yozishga to`g’ri kelar edi. Birinchi marta tsiklga kirish uchun, ikkinchisida esa navbatdagi hadlarni hisoblash uchun. Repeat tsiklida esa bunday noqulaylik yo`q, hamma buyruqlar bir martadan yozilgan.

TSikllar bilan ishlaganda, ularning qachondir albatta tugashi lozimligini nazarda tutish kerak. Ayrim hollarda, boshlang’ich ma`lumotlarning noto`g’ri kiritilganligi, mantiqiy ifodalarda qatnashadigan o`zgaruvchilar qiymatlarining o`zgarmasligi yoki boshqa qandaydir sabablar "cheksiz tsikl" effektini yuzaga keltirishi mumkin. Bu holda komp’yuter xech qachon bu tsiklni tugata olmaydi va shu sabab, dastur o’z ishini tugatmaydi. Quyidagi dastur parchalariga e`tibor bering:

a) x : 13; While x >10 do x : x  2;

b) x : 3; repeat y : x mod 2; x : x  2; until y  0;

Har ikki misolda "cheksiz tsikl" yuzaga kelganligini ko`rish mumkin.



Diqqat! Repeat tsikli hech bo`lmaganda bir marta ishlaydi.

5-BOB. BELGI VA SATRLAR

Komp’yuter faqat sonli ma`lumotlarnigina emas, balki belgili ma`lumotlarni ham qayta ishlashi mumkin. Delphi tili belgili ma`lumotlarni alohida olingan belgilar shaklida ham, belgilar iborat bo`lgan satr ko`rinishida ham qayta ishlashi mumkin.


Download 9,81 Mb.

Do'stlaringiz bilan baham:
1   ...   40   41   42   43   44   45   46   47   ...   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