Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основы_алгоритм_и_программир_2курс_ПИ .doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
720.9 Кб
Скачать

Урок № 19. Операторы цикла: с предусловием, с постусловием.

1.Оператор цикла с предусловием

Оператор цикла с предусловием целесообразно использовать в случаях, когда число повторений тела цикла заранее неизвестно и тело цикла может не выполняться. Проверка условия выполняется в начале оператора.

Формат опера­тора цикла с предусловием:

while <Условие> do <Оператор>;

Оператор тела цикла выполняется до тех пор, пока логическое выражение не примет значение False, то есть, в отличие от цикла с постусловием, цикл выполняется при значении логического выражения True.

Если перед первым выполнением цикла условие не выполняется (значение логического выражения равно False), то тело цикла вообще не выполняется и происходит переход на оператор, следующий за оператором цикла.

В теле цикла может находиться произвольное число операторов, которые заключаются в опера­торные скобки begin и end.

2. Оператор цикла с постусловием

Оператор цикла с постусловием целесообразно использовать в тех случаях, когда тело цикла необходимо выполнить не менее одного раза и заранее не­известно общее количество повторений цикла. Оператор цикла с постусло­вием имеет следующий формат:

repeat

<Оператор1>;

<ОператорN>;

until <Условие>;

Условие — это выражение логического типа. Операторы, заключенные между словами repeat и until, составляют тело цикла и выполняются до тех пор, пока логическое выражение не примет значение True. Посколь­ку условие проверяется в конце цикла, то операторы тела цикла выполняют­ся, как минимум, один раз.

В теле цикла может находиться произвольное число операторов без опера­торных скобок begin и end. По крайней мере, один из операторов тела цик­ла должен влиять на значение условия, в противном случае произойдет зацикливание.

Урок № 20. Подпрограммы: основные понятия, объявление подпрограмм. Процедуры, описание процедуры. Функции, описание функции.

1. Основные понятия.

Подпрограмма – это группа операторов, логически законченная и специальным образом оформленная.

Использование подпрограмм позволяет улучшить структуру программы и сократить ее размер.

По структуре подпрограмма аналогична программе, только отсутствует раздел подключения модулей, а заголовок отличается по оформлению.

Любая подпрограмма должна быть предварительно описана, после чего допускается ее вызов. При описании подпрограммы задаются ее имя, список формальных параметров и действия, выполняемые подпрограммой. При вызове подпрограммы указывается имя подпрограммы и список фактических параметров(аргументов), передаваемых подпрограмме для работы. Стандартные подпрограммы можно вызывать без предварительного описания (StrToInt, Sqr, Cos и др.). Стандартными они называются потому, что созданы одновременно с системой Delphi и являются ее неотъемлемой частью. В Delphi имеется много стандартных процедур и функций. Наличие богатой библиотеки таких программных заготовок существенно облегчает разработку прикладных программ. Нестандартную подпрограмму необходимо описать, чтобы компилятор смог установить связь между оператором вызова и теми действиями, которые предусмотрены в подпрограмме. Описание подпрограммы помещается в разделе описаний подпрограмм.

Описать подпрограмму — это значит указать ее заголовок и тело. В заголовке объявляются имя подпрограммы и формальные параметры, если они есть. Для функции, кроме того, указывается тип возвращаемого ею результата. За заголовком следует тело подпрограммы, которое, подобно программе, состоит из раздела описаний и раздела исполняемых операторов. В разделе описаний подпрограммы могут встретиться описания подпрограмм низшего уровня, а в них — описания других подпрограмм и т. д.

Подпрограммы делятся на процедуры и функции. Основным отличием функции от процедуры состоит в том, что функция может возвращать значение в качестве результата, поэтому ее можно использовать как операнд выражения или как правая часть оператора присваивания.