Збекистон миллий университети


§ 3.7. Ўтиш оператори, таркибли оператор



Download 1,98 Mb.
bet27/56
Sana23.06.2022
Hajmi1,98 Mb.
#694633
TuriПрограмма
1   ...   23   24   25   26   27   28   29   30   ...   56
Bog'liq
inf va dast-oquv-qollanma

§ 3.7. Ўтиш оператори, таркибли оператор
Ўтиш оператори Паскал тилининг асосий операторлари синфига киради ва программа операторларининг нормал кетма-кетлигини ўзгартириш учун ишлатилади. У бошқарув қайси операторга ўтиши кераклигини аниқлайди. Программанинг ихтиёрий операторига фақат битта нишон қўйиш мумкин. У оператордан олдин ёзилади ва ундан ":" ёрдамида ажратилади.
< нишонланган оператор> :: = <нишон> : < нишонланмаган оператор>;
Программада ҳамма ишлатилган нишонлар ҳар хил бўлиши шарт. Ўтиш операторида кўрсатилган нишон қайсидир операторда бўлиши шарт. Ўтиш оператори қуйидагича ёзилади:
< ўтиш оператори > :: = goto < нишон >

Масалан, goto 3;


Программада ишлатилган нишонлар нишонлар бўлимида бир марта эълон қилиниши шарт, қайси тартибида эълон қилинишини аҳамияти йўқ. Ўтиш оператори ёрдамида ҳосилавий операторининг ичига, ёки танлаш операторининг бир шоҳидан иккинчи шоҳига ўтиш мумкин эмас.
Таркибли оператор ҳосилавий операторлар синфига тегишли бўлиб, у программада операторлар кетма-кетлигини битта оператор сифатида ишлатиш зарур бўлган ҳолда ишлатилади. Таркибли оператор begin ва end калит сўзлари ичига олинган операторлар кетма-кетлигидан иборат бўлади: < таркибли оператор> ::= begin <оператор> {;<оператор>} end;

L abel 1, 3, 10; goto 10; мумкин эмас


begin begin
X : =0.5; goto 1; мумкин
g oto 1; 10:goto 3
... end;
1 :Y: =Sin(X)+1; 1:Y: =0.25;
...
end;
Мисолдан кўриниб турибдики, gоtо оператори бирор бошқа орераторнинг ички қисмига тўғридан тўғри мурожаат қилиши мумкин эмас.
Eхit ва Halt процедуралари ҳам ўтиш оператораларига ўхшаш буйруқларни бажаради. Eхit асосий программанинг тугаши ва қисмларидан чиқиб кетиши учун ишлатиш мумкин. Halt программанинг бажарилишини тўхтатади.


§ 3.8. Шартли оператор ва унинг турлари
Тармоқланувчи ҳисоблаш жараёнларида айрим босқичлари (операторлари) ҳар доим бир хил тартибида бажарилмайди, улар қандайдир текширилаётган шартларга боғлиқ бўлади. Бундай жараёнларни танлаш операторлари ёрдамида ёзиш мумкин. Танлаш операторлар ҳосилавий операторлар синфига киради ва шартли ва вариант операторларидан иборат.
Паскал тилида шартли операторнинг икки тури мавжуд: тўлиқ шартли оператор ва қисқартирилган шартли оператор:


<тўлиқ шартли оператор> :: = if <мантиқий ифода> then <оператор> else <оператор>;

Бунда if, then, else - хизматчи сўзлар.


Шундай қилиб, тўлиқ шартли оператор тузилиши қуйидагича - if B then S1 else S2;, бу ерда B - мантиқий ифода, S1 ва S2 - операторлар. Бундай шартли оператор қуйидагича бажарилади: агар B мантиқий ифода true қиймат қабул қилса, у ҳолда S1 оператор бажарилади, акс ҳолда S2 оператор бажарилади. Шартли операторга мисол:
if x<0 then i: =i+1 else k: =k+1;
Алгоритмлар ёзилишида баъзида шундай ҳоллар учраб турадики, қандайдир операторларни фақат мантиқий шарт рост бўлганда бажариш керак, акс ҳолда бу операторларни бажариш керак эмас. Шундай ҳолларда қисқартирилган шартли оператор ишлатилади: <қисқа шартли оператор>::= if <мантиқий ифода> then <оператор>.
Шундай қилиб, қисқартирилган шартли оператор - if B then S; кўринишида бўлиб қуйидагича ишлайди: агар B мантииқий ифода рост қиймат қабул қилса, у ҳолда S оператор бажарилади, акс ҳолда кейинги операторга ўтилади. Шартли операторда then ва else сўзларидан кейин фақат битта оператор туриши керак, агар алгоритмда шу жойларда бир нечта операторлар ёзилиши керак бўлса, у ҳолда улардан таркибли оператор яратилади. Қисқартирилган шартли оператор ишлатилишида эҳтиёт бўлиш керак. Масалан, қуйидаги операторни
if B1 then if B2 then S1 else S2
икки хил маънода тушуниш мумкин:
if B1 then begin if B2 then S1 end else S2
ёки
if B1 then begin if B2 then S1 else S2 end
Паскал тилининг қоидаси бўйича иккинчи операторни маъноси тўғри, яъни ҳар қайси хизматчи сўз else сўзига энг яқин бўлган хизматчи сўз true мос келади.
1-мисол:
y{х1 агар х<0
2х агар х>0

if х <0 then y:х1 else y:2х


ёки
if х<0 then y:х1
if х>0 then y:22

2-мисол
y{х4 агар <х <2


х-1 акс ҳолда

if (х<2) and (х>1)the y:х4 else y:х-1


3-мисол
F{-4 агар х<0


Х +3х4 агар 0<х<1
(х 3х4) агар х>1

if х<0 then y: =-4 else if х <1 then y:= sqr(х)3*х+4 else


y:sqr (sqr(х)3*х4)

4-мисол S1 2 3 ...n22


label 1;
var i,s:integer;
begin read (n);
s:0; i:0;
1: i: =i+1;
s:s sqr (i);
if i< n then gоtо1;

4-мисолда шартли операторнинг қисқа формасидан фойдаланилган.


Мустақил бажариш учун топшириқлар

1. 1 агар АВ ва С
x = 2 агар АВ ва С>=D
3 агар А# В



  1. Агар А>В бўлса, Y17, Y2A, Y3AB

  2. Берилган n соннинг жуфт ёки тоқлигини аниқланг.

  3. Берилган (Х,4) нуқтанинг марказий координата бошидаги бўлган R радиусли доирага тегишли ёки тегишли эмаслигини аниқланг.




Download 1,98 Mb.

Do'stlaringiz bilan baham:
1   ...   23   24   25   26   27   28   29   30   ...   56




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