ПредишенСледващото

Операторът задава цикъл се повтаря изпълнението на определени операции. Три различни структурни оператор са предвидени за изпълнение на цикъла в Паскал: Въпреки, Повторение, ЗА. Първите две се използват, когато броя на повторенията (повторенията) не е определена предварително, но ние знаем състоянието на завършване на цикъла. ЗА се използва, когато броят на повторенията на тялото на цикъла е известна предварително.

Това твърдение е най-мощният от трите, осъзнавайки цикли. Две други оператори може да се изрази с него (вж. Фиг. 23).

Булев израз на след време, наречен условие за възобновяване на цикъла, и трябва да има булев тип. Изявление след правя, е тялото на цикъла. Той повтаря дотогава, докато условието е вярно цикъл подновяване. След като състоянието възобновяването на цикъла става фалшиво, контрол преминава към оператора, който стои зад време. Ако подновяването на условие не е изпълнено преди цикъла, тялото на цикъла се прескача.

Фиг. 23. синтаксис диаграма изявление ДОКАТО контур

От горното описание става ясно, че твърдението, докато изпълнява основната структура на "дългосрочен цикъл", тъй като е налице, за да проверите условията на тялото на цикъла. Ето защо, на оператора се нарича оператор, като примка с предварително условие. Фиг. 24 е блок-схема на оператора.

Примка

Примка

Фиг. 24. Блок схема на а оператор

ПРИМЕР Пример. Като се има предвид броя на А, В (А> 1). Вземете всички правомощия на А, по-малък е броят на Б.

readln (А, В); C: = А;

докато C

Забележка. Правилното използване на изявление на време се нуждае от възможност да пишат правилно регулиране на параметрите на възобновяването на цикъла. Тук трябва да се има предвид следните препоръки:

1. Както е предвидено в логически условия, трябва задължително да се появят променливи, които променят своите стойности в течение.

2. За да избегнете влизане в цикъл по-добре да се напише състоянието на цикъла на прекратяване и след това в отчета за нейното отрицание.

3. Променлива логически израз трябва да получават първоначалните им стойности, преди да влезе отчета за известно време.

REPEAT оператор се нарича цикъл оператор с postcondition, тъй като тук повторен опит последователност оператори контролиращи експресията един поставени след тялото на цикъла (вж. Фиг. 25).

Примка

Фиг. 25. синтаксис изявление диаграма REPEAT линия

От синтаксис диаграма показва, че това твърдение не е задължително да се използва къдрава скоба за тялото на цикъл. Има ключови думи REPEAT и до себе си да играе ролята на тези скоби.

В това изявление, тялото се изпълнява докато условието е невярно, след престояване ДО. Условието за излизане от цикъла е вярно експресия. Виждаме, че това е форма на "цикъл-нагоре." Това твърдение е представена на фиг. 26.

Забележка. Има три основни разлики между операторите, като същевременно и повторете:

1. извършва в края, а не в началото на цикъла, като в отчета за време, така че изявлението REPEAT контур тяло се изпълнява най-малко веднъж в повторете изявление проверете също описанието на линия за излизане.

2. REPEAT изход от цикъла се извършва условия за истината, и докато - за лъжа.

3. не са необходими Изявлението линия, докато най-често се извършва под формата на декларация, съединение, в изявление повтарям оператор цикъл организация тяло скоби.

ЗА е предназначен за организиране на цикъла, когато е известно колко време трябва да се повтаря тялото на цикъла. Тук номерът на управление на повторения извършва чрез използване на специален променлива - параметър цикъл (контролна променлива), която се обозначава с увеличаване (намаляване) на последователност от стойности. ЗА е показана на Фиг. 27.

Примка

Фиг. 27. синтаксис диаграмата на оператора на цикъл за

Тук, "променливата" е параметър на цикъл ", израз 1" - първоначалната стойност на параметъра "експресия 2" - окончателното си стойност. Както управляема променлива трябва да бъде променлива, декларирана в местен блок, който съдържа активното оператор ЗА. Променливата за контрол трябва да има поредност тип. Началните и крайните стойности са от типа, който е съвместим с типа на параметъра на цикъла.

Когато операторът започва да изпълнява ЗА, началните и крайните стойности се определят веднъж и тези стойности се съхраняват в рамките на изпълнението на акта.

Операторът, който се съдържа в рамките на цикъла се изпълнява веднъж за всяка стойност на зададена Величина в диапазона между началните и крайните стойности. Променливата за контрол винаги се инициализира с първоначалната стойност. Това отнема всичките си стойности от порядъка на стъпки от 1, ако до и стъпки -1 ако Downto.

В случай на ДА, ако първоначалната стойност надхвърля границите на цикъла не се изпълнява.

За случая Downto е случаят, когато първоначалната стойност е по-ниска, отколкото на финала. От това заключаваме, че операторът прилага ЗА контур като време, «докато" цикъл верига - проверка на условията на цикъла повторение отива в тялото на цикъла.

1. Ако тялото на цикъла в тази декларация се състои от повече от един оператор, те са в скоби оператор (операторът въведе съставна структура).

2. За разлика от алгоритмичен език училището, ЗА твърдение не може да бъде спрян чрез определяне на променливо управление на окончателна стойност. Променливата цикъл не се отразява на броя на повторенията на тялото на цикъла.

3. След като променлива оператор манипулиран е неопределена, освен ако изпълнението на твърдението, че не е било прекъснато от оператор на прехода.

Помислете за примери за използване на изявление за организиране на циклични процеси.

Пример Пример 1. Отпечатване на кадрите номера в началото.

Var SEC: цяло число;

writeln ( "Преди началото на ляво. ');

за SEC: = 10 Downto 1 направи

writeln ( "нула"); writeln ( "Старт".)

В този пример, зададена Величина SEC заема стойност от тип INTEGER, но в Pascal се определя като редни променлива тип и следователно могат да приемат стойност от тип CHAR или принадлежат изброени тип, както е показано в Пример 2.

Пример 2. Пример преброяване на броя на работните часове на седмица.

тип ДНИ = (MO, ТУ, WE, TH, FR, SA, SU);

Var DEN: дни; WT: цяло число;

за DEN: = MO да направи SA

ако DEN <> SA тогава WT: = WT + 8

друго WT: = WT + 7; writeln (WT);

1. Каква е структурен оператор?

2. Каква е целта на съставния оператор?

3. Кое твърдение се използва в Браншовите организации (подбор)?

4. Какво се използва в изявление IF за избор на един от двата варианта?

5. Какво се използва в отчета за CASE за избор на една от многото възможности?

6. Как е вграждането на изявление АКО към другия?

7. Каква е разликата (от функционална гледна точка), пълен и непълен версии на отчета за CASE?

8. Какви видове цикли (цикъл цикъл или с далечен обсег) оператори прилагат ДОКАТО и повторете?

9. Какво се използва в изявленията време и REPEAT, за да проверите края на работния цикъл?

10. Каква е ролята на зададена величина в отчета ЗА?

11. Какъв вид контрол променлива може да се използва в отчета ЗА?

12. Каква е разликата операторите, като същевременно, повторете както и за по отношение на броя на повторенията на тялото на цикъла?

13. В кои оператори Паскал контур на тялото не може да бъде изпълнено нито веднъж?

Свързани статии

Подкрепете проекта - споделете линка, благодаря!