Аппараттық және бағдарламалық қамтамасыз етуді орнату

Visual Basic-те басқару құрылымдары. Басқару мәлімдемелері Басқару құрылымдары

if , if-else және switch операторлары Си бағдарламасының орындалуын басқарудың ең маңызды құралы болып табылады. Оларды бағдарламаның жалпы құрылымын жүзеге асыру үшін пайдалану керек. Төменде талқыланатын үш оператор әдетте сирек талқыланады, өйткені оларды тым көп пайдалану бағдарламаның оқылуын нашарлатады, қателер ықтималдығын арттырады және оны өзгертуді қиындатады. Никлаус Вирт анықтады құрылымдық бағдарламалаужоқ бағдарламалау сияқты.

үзіліс мәлімдемесі

break операторы тікелей құрамындағы while , do , for , switch операторларынан шығу үшін қолданылады. Бақылау шығу жасалған өтініштен кейінгі өтінішке ауысады. Break операторының пішіні бар

while((ch=getchar()) != EOF) /* ch=getchar() таңбасын оқу. Егер ол EOF сәйкес келмесе, while */ операторының денесі орындалады ( if(ch=="\n") break; putchar(ch); )

«Енгізілген таңбамен» цикл толығымен аяқталады. жаңа жол".

мәлімдемені жалғастыру

Жалғастыру операторы оны қамтитын циклдің ағымдағы итерациясының қалған бөлігін бірден өткізіп жіберу үшін пайдаланылады. Егер жаңа итерация цикл шарттарымен рұқсат етілсе, онда ол орындалады, жылы әйтпесецикл аяқталады. Жалғастыру мәлімдемесі келесі пішінге ие:

while((ch=getchar()) != EOF) /* ch=getchar() таңбасын оқу. Егер ол EOF сәйкес келмесе, while */ операторының денесі орындалады ( if(ch=="\n") continue; putchar(ch); )

Жалғастыру мәлімдемесі бар нұсқа жай ғана жаңа жол таңбаларын өткізіп жібереді және EOF жалауы оқылған кезде ғана циклден шығады.

өту мәлімдемесі

goto операторы басқаруды көрсетілген белгі бар операторға сөзсіз тасымалдауға арналған. Оның келесі формасы бар:

өту белгісі;

Керниган мен Ричи goto мәлімдемесін «өте нашар» деп санайды және оны мүмкіндігінше аз немесе аз қолдануды ұсынады. Мұнда оператор жазбасының мысалы берілген:

Бұл мәлімдеме дұрыс орындалуы үшін part1 деп белгіленген басқа мәлімдеме болуы керек. Бұл жағдайда мәлімдеме жазбасы қос нүктеден кейін белгіден басталады:

1-бөлім: printf("секіру нүктесі\n");

Егер goto , break , continue , return операторларынсыз жасай алмасаңыз, goto қолданбасын пайдаланған кезде артқа емес, алға жылжыңыз.

break операторы циклды мерзімінен бұрын бұзу үшін пайдаланылмаған дұрыс, оны switch операторының ішінде пайдалану пайдалы.

Жалғастыру операторы циклдардың логикасын өзгерту үшін пайдаланылмауы керек.

Неліктен көптеген қайтару мәлімдемелері бар функцияларды пайдалану қажет емес. Құрылымдық бағдарламалау принциптерінің бірі бағдарламаның бір кіру және бір шығу нүктесі болуы керек. Көптеген қайтару операторлары бар функцияларды оқу функция денесінің соңында бір ғана қайтару операторы бар функцияларға қарағанда қиынырақ.

Басқару операторлары – программа нұсқауларының орындалу ретін өзгертетін орындалатын операторлар. Бағдарламалау тілдерінде қолданылатын барлық мәлімдемелердің ішінде басқару операторлары ең көп пікірталас тудырды. Талқылаудың негізгі тақырыбы - ең қарапайым goto бақылау мәлімдемесі. Ол бағдарламаның орындалу ретін өзгертуге және атпен немесе санмен көрсетілген белгілі бір жерден бастап бағдарламаның орындалуына өтуге мүмкіндік береді. Демек, бұл мәлімдеме машина тіліндегі секіру нұсқаулығын тікелей қолданудан басқа ештеңе емес. Тілде мұндай оператордың болуы жоғары деңгейбағдарламашыларға мұндай жүйесіз бағдарламаларды жазуға мүмкіндік береді1:

goto 40 20 Қолданудан қашу процедурасы

өтіңіз 70 40 егер (KryptoniteLevel< LethalDose) then goto 60

60 RescueDamsel процедурасын қолдану 70 ...

ал бұл әрекеттердің барлығын бір құрылыммен жазуға болады:

егер (KryptoniteLevel< LethalDose)

содан кейін (RescueDamsel процедурасын қолданыңыз) басқа (Еваде процедурасын қолданыңыз)

Мұндай қиындықтарды болдырмау үшін заманауи бағдарламалау тілдерінде тармақталған құрылымдарды бір өрнекпен жазуға мүмкіндік беретін басқару мәлімдемелері бар. Кейбір жалпы қабылданған тармақталған құрылымдар және оларға әртүрлі бағдарламалау тілдерінде сәйкес келетін басқару операторлары суретте көрсетілген. 5.7. Алғашқы екі құрылымды біз 4-тарауда кездестіргенімізді ескеріңіз. Біздің псевдокодымызда олар if-then-else және while операторларымен ұсынылған. Таңдау деп аталатын үшінші құрылымды i f-then-el se құрылымының жалғасы ретінде қарастыруға болады. Олардың арасындағы айырмашылық мынада: if-then-else операторы екі нұсқадан таңдауға мүмкіндік береді, ал case операторы бірнеше нұсқадан таңдауға мүмкіндік береді.

Тағы бір кең таралған құрылым for циклінің операторы болып табылады (5.8-сурет), сияқты while мәлімдемесібіздің псевдокод. Олардың арасындағы айырмашылық циклды аяқтау шартын инициализациялау, өзгерту және тексеру бір операторда біріктіріледі. Мұндай операторды цикл денесін белгілі бір рет орындау қажет болғанда қолдануға ыңғайлы - берілген интервалдағы санауыш айнымалының әрбір мәні үшін бір рет. Атап айтқанда, суретте көрсетілген оператор. 5.8, цикл денесін бірнеше рет орындауға нұсқау береді: Count айнымалысының мәні 1 болғанда, содан кейін оның мәні 2 болғанда және оның мәні 3 болғанда соңғы рет.

Жоғарыда келтірілген мысалдардан тармақталған құрылымдар императивті де, объектіге бағытталған бағдарламалау тілдерінде де шамалы вариациялары бар деген қорытынды жасауға болады. Теориялық тұрғыдан есептеу техникасыалгоритмдік шешімі бар кез келген есептің шешімі шектелген құрылымдардың көмегімен жазылуы мүмкін деген болжам бар. Біз бұл мәлімдемені 11-тарауда талқылайтын боламыз. Осы арада айта кететін жайт, бағдарламалау тілін үйрену әртүрлі басқару мәлімдемелерін шексіз зерттеу емес. Шындығында, қазіргі бағдарламалау тілдерінде қолданылатын басқару құрылымдарының көпшілігі осы тарауда сипатталған құрылымдардың вариациясы болып табылады.


Бағдарламалау тіліне қандай құрылымдарды қосу керектігін таңдау талғамға байланысты. Тіл жасаушының мақсаты – алгоритмдерді оқылатын пішінде жазуға мүмкіндік беріп қана қоймай, сонымен бірге бағдарламашыға көмектесетін тілді дамыту. Бұл мақсатқа тарихи немқұрайлы бағдарламалауға әкелген элементтерді пайдалануды шектеу және жақсы ойластырылған элементтерді енгізу арқылы қол жеткізіледі. Нәтижесінде бізде бағдарлама жазу әдістерін біріктіретін құрылымдық бағдарламалау және дұрыс пайдаланубасқару операторлары. Мақсаты – түсінуге оңай және өз міндетін орындайтын бағдарлама жасау.

Пікірлер

Тәжірибе көрсеткендей, адам үлкен бағдарламаны түсінуге тырысқанда, бағдарламалау тілінің қаншалықты ойластырылғандығы және оның мүмкіндіктері қалай пайдаланылғаны, қалыпты адам тілінде қаншалықты пайдалы, тіпті қажетті қосымша ақпарат берілгені маңызды емес. Сондықтан бағдарламалау тілдері бағдарламада түсіндірме пікірлерді (комментарияларды) орналастыру мүмкіндігін береді. Компилятор түсініктемелерді елемейді, сондықтан олардың болуы немесе болмауы машинаның көзқарасы бойынша бағдарламаға әсер етпейді. Аудармашы жасаған бағдарламаның машина тіліндегі нұсқасы түсініктемелермен немесе түсініктемелерсіз өзгеріссіз қалады. Бірақ олардағы ақпарат адам үшін маңызды. Онсыз үлкен және күрделі бағдарламаларды түсіну мүмкін емес еді.

Visual Basicобъектіге бағытталған программалау тілі болып табылады. Оны операциялық жүйе пайдаланушылары үшін құрал ретінде Microsoft әзірлеген Microsoft Windowsөзіңіздің графикаңызды жасай алады пайдаланушы интерфейсі. Шын мәнінде, Visual Basic - бұл жай ғана бағдарламалау тілі емес. Бұл толық әзірлеу пакеті бағдарламалық қамтамасыз ету, бұл бағдарламашыға белгілі бір құрамдас бөліктерден (мысалы, түймелер, құсбелгілер, мәтін ұялары, айналдыру жолақтары және т.б.) пайдаланушы интерфейсін жасауға және сол құрамдастарды олардың белгілі бір оқиғаларға қалай әрекет ету керектігін сипаттай отырып, олардың қажеттіліктеріне сәйкес реттеуге мүмкіндік береді. Мысалы, түйме жағдайында бағдарламашы түймені басқан кезде не болатынын сипаттай алады. Бұл алдын ала анықталған құрамдас бөліктерден бағдарламалық құралды құру әдісі ағымдағы үрдісбағдарламалық қамтамасыз етуді әзірлеуде.

Операцияның танымал болуына байланысты Windows жүйелеріжәне Visual Basic пакетін пайдаланудың қарапайымдылығы, Visual Basic тілі бүгінгі таңда ең кең таралған бағдарламалау тілдерінің біріне айналды. Екінші жағынан, Visual Basic тек үйлесімді болғандықтан бағдарламалық құралдар Microsoft оны жалпы мақсаттағы бағдарламалау тілі ретінде танымайды.

Бағдарлама мәтінінен түсініктемелерді бөлудің екі негізгі жолы бар. Соның бірі түсініктемені арнайы жақшаға алу. Тағы бір әдіс - таңбаның оң жағындағы жолдың қалған бөлігін алуы мүмкін түсініктеменің басын белгілеу. C++, C# және Java тілдерінде түсініктеме жазудың екі жолы да мүмкін. Оларда түсініктеме /* және */ белгілерінің арасына қойылуы немесе // басталуы мүмкін. Осылайша, C++, C# және Java тілдерінде екі белгі де жарамды:

/* Бұл түсініктеме. */

// Бұл түсініктеме.

Түсініктемелерде не жазу керектігі туралы бірнеше сөз айту керек. Жаңадан келген бағдарламашылар, әдетте, сияқты өрнектерге түсініктемелермен бағдарламаны қамтамасыз ету қажеттілігі туралы айтылғанда

ApproachAngle - SlipAngle - HyperSpacelncine:

түсініктеме қосу "SlipAngle ішінен HyperSpacelncine мәнін алып тастаңыз және ApproachAngle айнымалысына мән тағайындаңыз". Мұндай пікірлер бағдарламаны түсінікті етпей, тек ұзартады. Түсініктеменің мақсаты бағдарламаны қайталау емес, түсіндіру екенін есте сақтаңыз. В бұл мысал ApproachAngl айнымалысының мәні неліктен есептелетінін түсіндірген дұрыс (егер ол бағдарламадан түсініксіз болса). Мысалы, «ApproachAngle айнымалысы ForceFiel dJetti sonVel ocity айнымалысының мәнін кейінірек есептеу үшін пайдаланылады» деген түсініктеме алдыңғыға қарағанда әлдеқайда пайдалы.

Сонымен қатар, бағдарлама мәлімдемелерінің арасында орналастырылған түсініктемелер кейде бағдарламаны оқуды және түсінуді қиындатады. Бір бағдарлама блогы туралы түсініктемелерді бір жерде, мысалы, оның басында орналастырған дұрыс. Бағдарламаның белгілі бір бөлімі осылай жасалады, онда мақсаттың сипаттамасы және Жалпы сипаттамаларпайдаланушы қажетті түсініктемелерді таба алатын бағдарлама блогы. Бұл әдістемені бағдарламаның барлық блоктары үшін қолдансаңыз, онда бағдарлама біркелкі болады: әрбір блок түсіндірме түсініктемелерден тұрады, содан кейін осы блоктың ресми көрсетілімі болады. Бұл біркелкі бағдарламаны оқуды әлдеқайда жеңілдетеді.

Процедуралық бірлік

Алдыңғы тарауларда біз үлкен бағдарламаларды шағын, басқарылатын блоктарға бөлудің артықшылықтары туралы айтқан болатынбыз. Бұл бөлімде біз императивті программалау тілінде жазылған программаның модульдік көрінісін алудың негізгі құралы болып табылатын процедура түсінігіне назар аударамыз. Процедура сонымен қатар объектінің әртүрлі енгізулерге қалай жауап беруі керектігін сипаттау үшін объектіге бағытталған тілде жазылған бағдарламада қолданылатын құрал болып табылады.

Процедуралар

Процедура - бұл басқа бағдарлама блоктары дерексіз құрал ретінде пайдалана алатын кейбір тапсырманы орындауға арналған нұсқаулар жиынтығы. Басқару оның әрекеттері қажет болған кезде процедураға (машина тілінің ауысу нұсқауын пайдалану арқылы) ауыстырылады, содан кейін процедураның орындалуы аяқталғаннан кейін ол қайтадан бастапқы бағдарлама блогына қайтарылады (5.9-сурет). Басқаруды процедураға беру процесі процедураны шақыру деп аталады. Процедураның орындалуын сұрайтын бағдарлама бірлігі шақырушы бағдарлама немесе шақырушы блок деп аталады.

Көптеген жолдармен процедура - бұл процедурамен орындалатын әрекеттерді анықтайтын орындалатын операторлардан кейін мәлімдеме мәлімдемелерінен тұратын шағын бағдарлама. Әдетте, процедурада жарияланған айнымалы жергілікті айнымалы болып табылады, яғни оны тек осы процедура ішінде пайдалануға болады. Бұл тәсіл екі тәуелсіз тәртіп бірдей атпен айнымалы мәндерді пайдаланса, туындауы мүмкін шатасуды жояды. Әсері бағдарламаның кез келген бөлігімен шектелмейтін айнымалылар жаһандық айнымалылар деп аталады және олар бағдарламаның кез келген жерінде қолжетімді. Көптеген бағдарламалау тілдері жергілікті және ғаламдық айнымалыларды пайдаланады.

Біз қарастырып жатқан бағдарламалау тілдерінде процедураның сипаттамасы біздің псевдокодымызбен бірдей дерлік (4-тарауды қараңыз). Ол процедура тақырыбы деп аталатын өрнектен басталады, ол басқа нәрселермен қатар процедураның атауын қамтиды. Тақырыптан кейін процедураны егжей-тегжейлі анықтайтын мәлімдемелер келеді.

Дегенмен, біз «DeactivateCrypton процедурасын қолдану» сияқты өрнекпен процедураны орындауды сұраған біздің бос псевдокодтан айырмашылығы, қазіргі заманғы бағдарламалау тілдерінің көпшілігі процедураны оның атын көрсету арқылы шақыруға мүмкіндік береді. Мысалы, GetNames, SortNames және WriteNames атаулар тізімін алу, сұрыптау және басып шығару процедураларының атаулары болса, онда тізімді алатын, сұрыптайтын және басып шығаратын бағдарлама келесі түрде жазылуы мүмкін.

GetNames процедурасын қолданыңыз. SortNames процедурасын қолданыңыз. WriteNames процедурасын қолданыңыз.

Әрбір процедураға процедура орындайтын әрекетті көрсететін атау бергендіктен, бұл стенография бағдарламаның мақсатын көрсететін командалар тізбегі екенін ескеріңіз.

Құрылымдық операторлар - бұл басқа операторлардың белгілі бір ережелері бойынша салынған құрылыстар. Құрылымдық мәлімдемелерге мыналар жатады:

Құрама мәлімдеме

Шартты оператор

Таңдау операторлары

Цикл операторлары

мәлімдемесімен

1. Құрама оператор

Құрама оператор бір-бірінен нүктелі үтірмен бөлінген және басы мен соңы оператор жақшаларымен бөлінген кез келген операторлардың кез келген сандарының тобы.

Құрама мәлімдеме пішімі:

баста<Оператор1>; ... ; <ОператорN>;

Құрамындағы мәлімдемелер санына қарамастан, құрама мәлімдеме бір нысан ретінде қарастырылады. Құрама оператордың ең көп қолданылуы шартты операторлар мен цикл операторларында.

Құрама операторлар бір-бірінің ішіне кірістірілуі мүмкін және құрама операторлардың кірістіру тереңдігінде ешқандай шектеулер жоқ.

2. Шартты оператор

Шартты оператор белгілі бір шарттарға байланысты белгілі бір мәлімдемелердің орындалуын немесе орындалмауын қамтамасыз етеді.

Шартты мәлімдеме пішімі:

Егер содан кейін<Оператор1> ;

Шарт логикалық түрдің өрнегі болып табылады. Оператор келесідей жұмыс істейді: егер шарт ақиқат болса (бар шынайы мән), онда оператор1 орындалады, әйтпесе оператор2 орындалады. Екі оператор да құрама болуы мүмкін.

Шартты сөйлемді қысқартылған түрде жазуға болады, егер одан кейін басқа сөз және оператор2 болмаса.

Тармақтарды үш немесе одан да көп бағытта ұйымдастыру үшін бір-біріне кірістірілген бірнеше шартты мәлімдемелерді пайдалануға болады. Бұл жағдайда әрқайсысы өзінен бұрын тұрған уақытқа сәйкес келеді. Себебі мүмкін қателершартты мәлімдемелердің ұя салуынан аулақ болу керек.

3. Операторды таңдаңыз

Оператор таңдау шартты оператордың жалпылауы болып табылады және қол жетімді опциялардың ерікті санынан таңдау жасауға мүмкіндік береді. Бұл мәлімдеме деп аталатын өрнектен тұрады селектор,опциялар тізімі және шартты мәлімдемедегідей мағынаға ие басқа қосымша тармақ.

Мәлімдеме пішімін таңдаңыз:

іс<Выражение-селектор>бойынша

<Список1> : <Оператор1>;

<СписокN> : <ОператорN>

Таңдаушы өрнегіреттік типте болуы керек. Әрбір опция қос нүктемен бөлінген тұрақтылар тізімі бұл опцияоператор. Таңдау константаларының тізімі бір-бірінен үтірмен бөлінген мәндер мен ауқымдардың ерікті санынан тұрады. Ауқым шекаралары «...» арқылы бөлінген екі тұрақты шама ретінде жазылады. Тұрақтылар түрі селекторлық өрнектің түріне сәйкес болуы керек.

Таңдау операторы келесідей орындалады:

1. Селекторлық өрнектің мәні бағаланады.

2. Селекторлық мәннің константалармен және сәйкес тізім диапазонындағы мәндермен сәйкестігі үшін опцияларды дәйекті қарау орындалады.

3. Егер келесі нұсқа үшін бұл іздеу сәтті болса, онда осы нұсқаның операторы орындалады. Осыдан кейін таңдау операторының орындалуы аяқталады.

4. Барлық тексерулер сәтсіз аяқталса, else сөзінен кейінгі оператор (бар болса) орындалады.

Мысал.Мәлімдемені таңдаңыз

caseNumberDay of

1..5: strDay:= "Жұмыс күні";

6..7: strDay:= "Демалыс күні"

else strDay:="";

Апта күнінің нөмірін қамтитын NumberDay бүтін айнымалысының мәніне байланысты strDay жолының айнымалы мәніне сәйкес мән тағайындалады.

Си программалау тілінің амалдары мен операторлары. Бағдарлама мысалдары.

Басқару құрылымдары және бағдарламалау тілдерінің негізгі құрылымдары

Орындау кезінде компьютер жадында орналасқан бағдарлама жадының белгілі бір аймағын алады. Уақыттың әрбір нүктесінде бағдарламаның күйі ақпараттың екі түрімен сипатталады:

Біз айнымалылар ретінде түсінетін кейбір жады ұяшықтарының күйі;

Программаның белсенді нүктесі, яғни қазіргі уақытта орындалып жатқан программа командасы.

Сондықтан орындалатын әрекеттердің екі негізгі класын ажыратуға болады есептеу жүйесі:

Бағдарлама айнымалылары (сипаттамалары) үшін жад аймағын бөлетін әрекеттер.

Бағдарламаның орындалу нүктесін өзгертетін әрекеттер (операторлар, нұсқаулар, конструкциялар).

Екінші кластың әртүрлі әрекеттер жиынтығын басқару құрылымдары деп те атайды.

Әдетте программадағы операторлар жазылу реті бойынша бірінен соң бірі орындалады. Бұл тізбекті орындау деп аталады. Біз жақын арада талқылайтын әртүрлі Си тілінің операторлары бағдарламашыға оны анықтауға мүмкіндік береді келесі мәлімдемеорындалу реті келесіден басқаша болуы мүмкін. Бұл басқаруды беру деп аталады.

1960 жылдары басқаруды тасымалдауды бақылаусыз пайдалану бағдарламалық жасақтаманы әзірлеу топтары бастан кешірген көптеген қиындықтардың түбірі екені белгілі болды. Кінә бағдарламашыға бағдарламадағы басқаруды өте кең ауқымдағы ықтимал адрестердің біріне беруге мүмкіндік беретін goto операторына жүктелді. Құрылымдық бағдарламалау деп аталатын концепция «goto мәлімдемесін жоюдың» дерлік синониміне айналды.

Бом мен Якопинидің зерттеуі бағдарламалаудың мүмкін екенін көрсетті толық болмауымәлімдемелерге өту. Бағдарламалау стилін «бағдарламалаусыз бағдарламалауға» өзгерту бағдарламашылар үшін дәуірлік ұранға айналды. Бірақ 1970 жылдарға дейін кәсіби бағдарламашылардың кең топтары құрылымдық бағдарламалауға байыпты түрде қарай бастады. Нәтижелер әсерлі болды, өйткені бағдарламалық жасақтаманы әзірлеу топтары әзірлеу уақытының қысқарғанын, жүйені уақытында жиі жеткізуді және жобаны бюджет бойынша аяқтауды хабарлады. Табыстың кілті жай ғана құрылымдық бағдарламалау әдістеріне негізделген бағдарламалар түсінікті, жөндеу және өзгерту оңайырақ және ең бастысы қатесіз жазылу ықтималдығы жоғары.
1966 жылы Бом мен Якопинидің жұмысы барлық бағдарламаларды тек үш басқару құрылымын, атап айтқанда реттілік құрылымын, таңдау құрылымын және қайталау құрылымын пайдаланып жазуға болатынын көрсетті. Бұл нәтижені Бом мен Якопини 1966 жылы кез келген бағдарламаны тек осы құрылымдардан және олардың комбинацияларынан тұратын эквивалентті бағдарламаға айналдыруға болатындығын дәлелдеу арқылы белгіледі. Бұл жағдайда дәйекті құрылым негізінен Си тіліне салынған.Егер басқаша көрсетілмесе, компьютер Си операторларын жазылу ретімен бірінен соң бірін автоматты түрде орындайды.

Сонымен, кез келген күрделіліктегі есепті шешуге арналған бағдарлама келесі (тізбек), тармақталу және цикл деп аталатын үш құрылымнан тұруы мүмкін. Бұл басқару құрылымдарының әрқайсысы бағдарламалау тілінде сәйкес конструкциялар жиынтығымен жүзеге асырылады.

Басқару құрылымдарына мыналар жатады:

· келесілердің құрылымы;

Тармақтану құрылымы

6-тарау. БАСҚАРУ ҚҰРЫЛЫМДАРЫ Тағайындау туралы мәлімдеме Қарапайым және құрама операторлар Шартты оператор Бірнеше таңдау операторы Алдын ала шарты бар цикл операторы Кейінгі шарты бар цикл операторы Параметрі бар цикл мәлімдемесі Шартсыз көшу мәлімдемесі және процедуралар


2 тарау. 6. БАСҚАРУ ҚҰРЫЛЫМДАРЫ Тағайындау операторы Оператор - бұл деректерге бағдарламадағы кейбір әрекеттерді немесе әрекеттер тізбегін орнату үшін қызмет ететін бағдарламалау тілінің құрылымы. Бағдарлама операторларының жиыны оған енгізілген алгоритмді жүзеге асырады. Кез келген оператор қандай да бір әрекетті білдіреді. Мәнді айнымалыға «итеру» процесі тағайындау деп аталады (бірінші тағайындау инициализация деп аталады). Тағайындау арнайы конструкция – тағайындау операторы арқылы жүзеге асырылады: айнымалы идентификатор:=:= өрнек Var W,H: Integer; Бастау W:= 23; H:= 17; W:=W*H; Соңы.


3 тарау. 6. БАСҚАРУ ҚҰРЫЛЫМДАРЫ Қарапайым және құрама мәлімдемелер Екі дәйекті оператор нүктелі үтірмен бөлінуі керек (мәлімдеменің соңын білдіреді): a:= 11; b:= a * a; Жазыңыз(a,b); Құрама мәлімдеме - бұл бір мәлімдеме ретінде қарастырылатын мәлімдемелер тізбегі. Бастау және аяқтау (оператор жақшалары) сақталған сөздерді қолдану арқылы құрастырылған. Программадағы оператор дегеніміз – қандай да бір әрекетті орындайтын, бір бөлінбейтін сөйлем. Қарапайым оператор басқа операторларды қамтымайды (тапсырма операторы, процедураны шақыру, ...). бастау a:= 11; b:= a * a; (a, b) соңын жазу;


5 содан кейін X:= X + 5 бастаңыз; Y:= 1 соңы басқа Y:= -1; Шартты оператор тармақтарды бағдарламалау үшін қолданылады, яғни. " title="(!LANG:4) 6-бөлім. БАСҚАРУ ҚҰРЫЛЫМДАРЫ Шартты оператор егер K > 5 болса, онда X:= X + 5 басталады; Y:= 1 және басқаша Y:= - 1 ; Шартты оператор тармақтарды, яғни белгілі бір шарттарда орындау қажет болатын жағдайларды бағдарламалау үшін қолданылады." class="link_thumb"> 4 !} 4 тарау. 6. БАСҚАРУ ҚҰРЫЛЫМДАРЫ Шартты оператор егер K > 5 болса, онда X:= X + 5 басталады; Y:= 1 соңы басқа Y:= -1; Шартты оператор тармақтарды бағдарламалау үшін қолданылады, яғни. белгілі бір жағдайларда әртүрлі әрекеттерді орындау қажет болатын жағдайлар. Шартты оператордың құрылымы бар: егер логикалық өрнексодан кейін else операторы әр филиалда бір ғана мәлімдемеге рұқсат етіледі. 5 содан кейін X бастаңыз:= X + 5; Y:= 1 соңы басқа Y:= -1; Шартты оператор тармақтарды бағдарламалау үшін қолданылады, яғни. "> 5 орындалу үшін белгілі бір жағдайларда қажет болған жағдайлар, онда X:= X + 5 басталады; Y:= 1 аяқталады, басқа Y:= -1; Шартты оператор тармақтарды бағдарламалау үшін қолданылады, яғни. Белгілі бір жағдайларда әртүрлі әрекеттерді орындаңыз. Шартты оператордың құрылымы бар: егер логикалық өрнек болса, else операторы Әр тармаққа бір ғана оператор рұқсат етіледі."> 5 then begin X:= X + 5; Y:= 1 соңы басқа Y:= -1; Шартты оператор тармақтарды бағдарламалау үшін қолданылады, яғни. " title="(!LANG:4) 6-бөлім. БАСҚАРУ ҚҰРЫЛЫМДАРЫ Шартты оператор егер K > 5 болса, онда X:= X + 5 басталады; Y:= 1 және басқаша Y:= - 1 ; Шартты оператор тармақтарды, яғни белгілі бір шарттарда орындау қажет болатын жағдайларды бағдарламалау үшін қолданылады."> title="4 тарау. 6. БАСҚАРУ ҚҰРЫЛЫМДАРЫ Шартты оператор егер K > 5 болса, онда X:= X + 5 басталады; Y:= 1 соңы басқа Y:= -1; Шартты оператор тармақтарды бағдарламалау үшін қолданылады, яғни. белгілі бір жағдайларда орындау қажет болатын жағдайлар"> !}




6 тарау. 6. БАСҚАРУ ҚҰРЫЛЫМДАРЫ Көп таңдаулы оператор Таңдау операторы әрекеттердің бірнеше баламалы опцияларын жүзеге асыру үшін пайдаланылады, олардың әрқайсысы қандай да бір параметрдің өз мәндеріне сәйкес келеді. тұрақты/диапазонның case өрнегі else операторлары: оператор end ; Мәні, және де реттік түрлердің бірі болуы керек (LongInt-тен басқа). Мәнге байланысты есептелетін мәнге тең таңдау тұрақтысы алдында тұрған оператор таңдалады (балама – басқасынан кейінгі операторлар). Тұрақты мәндер әрбір жиынтықта бірегей болуы керек, яғни. олар тек бір нұсқада көрінуі мүмкін.


7 тарау. 6. БАСҚАРУ ҚҰРЫЛЫМДАРЫНЫҢ I регистрі (I: Word) 1: X:= X +1; 2.3: X:= X +2; 4..9: бастау Write(X); X:= X + 3 (m.b. ";") соңы (m.b. ";") басқа X:= X * X; Writeln(X) (m.b. ";") соңы;


8 тарау. 6. БАСҚАРУ ҚҰРЫЛЫМДАРЫНЫҢ циклдік операторы «While» (алғы шарты бар) while шартты өрнегі do операторы (цикл денесі) do қызметші сөзінен кейін логикалық шарт орындалғанға дейін циклдік түрде орындалады, яғни. мәні True болғанда. Циклдің аяқталу мүмкіндігі болуы үшін оның денесінің мазмұны цикл күйіне әсер етуі керек. Шарт жарамды өрнектерден және цикл денесінің бірінші орындалуына дейін анықталған мәндерден тұруы керек. VarF,N: LongInt;(есеп 10 Begin F:= 1; N:= 1; while N !}


9 тарау. 6. БАСҚАРУ ҚҰРЫЛЫМДАРЫ Цикл операторы «Бұрын» (соңғы шарты бар) Қайталау және дейін сөздерінің арасындағы операторлар цикл денесін құрайды. Егер шын болса, цикл аяқталады. «While» циклі – «шарт ақиқат болғанда, дененің мәлімдемелерін орындаңыз». «Алдында» циклі – «шарт ақиқат болғанша цикл денесін орындау»; False дейін қайталаңыз; t операторын шартты өрнекке дейін қайталаңыз;


10 тарау. 6. БАСҚАРУ ҚҰРЫЛЫМДАРЫ Параметрі бар цикл операторы (санауыштағы цикл) реттік түрдегі айнымалы болып табылады, және мәндері де сол типке жатуы керек. Мән мәннен мәнге өсу (сақталған сөзді пайдаланған кезде) немесе кему (төмен) реті бойынша өзгереді, ол сілтеме жасайтын түрдегі ең жақын екі мән арасындағы интервалға тең тұрақты қадаммен (бүтін сандар үшін, бұл 1, таңба түрлері үшін, кодты 1-ге көбейткенде бір таңбадан екіншісіне және т.б.). ілмектер үшінкірістірілген циклдердің ешқайсысы айнымалы мәндерді - сыртқы циклдардың параметрлерін пайдаланбаса немесе өзгертпесе, кірістіруге рұқсат беріңіз. Берілген бірнеше рет орындалуы керек «қатаң» циклдарды ұйымдастыру үшін қолданылады. for r циклінің параметрі:= 1-өрнектен 2-өрнекке do downto операторына


12 тарау. 6. БАСҚАРУ ҚҰРЫЛЫМДАРЫ Шартсыз өту операторы Белгі бағдарламаның кез келген жерінде операторлар арасында пайда болуы мүмкін және екінші оператордан қос нүкте «:» арқылы бөлінеді. Шартсыз секіру операторларының ауқымы қатаң түрде локализацияланған. Goto операторында процедуралар арасында, сондай-ақ негізгі блок пен процедура арасында өтуге тыйым салынады. Шартсыз тармақталған оператор орындауды басқаруды белгімен көрсетілген бағдарлама орнына ауыстырады (ол құрылымдық программалау теориясы тұрғысынан «артық»). goto label Таңбасыз бүтін сан; Белгі идентификаторы, синтаксистік диаграммалар және: LabelL1, L2; Begin... Goto L1;... L1: Goto L2;... L2: End.


13 тарау. 6. БАСҚАРУ ҚҰРЫЛЫМДАРЫ Шартсыз секіру процедуралары Циклдік құрылымдармен жұмыс істеу кезінде басқаруды құрылымдық емес беру процедуралары: Break - кез келген түрдегі циклден шығуды жүзеге асырады; Жалғастыру – цикл денесінің соңына дейін қалған операторларды елемей, циклдің келесі итерациясына көшу. Exit және Halt процедуралары бағдарлама блоктарынан (процедуралар, функциялар, негізгі бағдарлама блогы) шығу үшін арнайы жасалған. Halt() қайтару арқылы бағдарламадан шығады операциялық жүйекөрсетілген шығу коды. Exit сөзсіз ішкі бағдарламадан шығады. Егер процедура негізгі блокта қолданылса, онда ол Halt сияқты орындалады.

Мақала ұнады ма? Достарыңызбен бөлісіңіз!
Бұл мақала пайдалы болды ма?
Иә
Жоқ
Пікіріңізге рахмет!
Бірдеңе дұрыс болмады және сіздің дауысыңыз есептелмеді.
Рақмет сізге. Сіздің хабарламаңыз жіберілді
Мәтіннен қате таптыңыз ба?
Оны таңдаңыз, басыңыз Ctrl+Enterжәне біз оны түзетеміз!