- •31. Оператор выбора Case..Of. Работа оператора.
- •32. Циклические структуры. Оператор цикла со счетчиком и его работа
- •33. Цикл с предусловием,порядок его выполнения.
- •34. Цикл с постусловием,порядок его выполнения.
- •35. Подпрограммы-функции.
- •36. Подпрограммы-процедуры.Процедуры обработки событий
- •37. Глобальные и локальные переменные.
- •39. Понятие модели.Моделирование как метод познания.
- •40. Классификация моделей по различным признакам.
34. Цикл с постусловием,порядок его выполнения.
repeat
{Операторы}
until условие выхода из цикла;
Условие - это логическое выражение булевского типа (операция отношения или логическая операция)
Тело цикла выполняется в любом случае, затем проверяется условие.
Операторы выполняются в том случае, если значение логического выражения равно false, в противном случае осуществляется выход из цикла
Оператор repeat может быть использован для проверки правильности ввода исходных данных
Нижняя граница тела цикла определена служебным словом until, поэтому операторные скобки begin и end могут быть опущены (однако если операторы тела цикла заключены в операторные скобки - это не является ошибкой).
35. Подпрограммы-функции.
Функция - это подпрограмма, результатом работы которой является какое-либо значение (одно единственное). Это позволяет использовать функции как обычные переменные, т.е. как операнды в выражениях.
Подпрограмма-функция начинается с заголовка, в котором содержится имя функции, имя и тип каждого формального параметра, а также тип результата:
function <имя ф-ции>(<р1>:<тип_р1>;<р2>:<тип_р2>;... ):<тип_рез>;
За заголовком функции следуют обявления локальных переменных подпрограммы-функции. Тело подпрограммы-функции заключается в операторные скобки begin - end;
Необходимо помнить о следующих особенностях подпрограммы-функции:
Локальные переменные, объявленные в подпрограмме, никак не связаны с главной программой - глобальными переменнами - даже при совпадении имен (!).
в отличие от подпрограммы-процедуры подпрограмма-функция возвращает только одно значение;
тип этого результата должен быть указан в заголовке;
тип возвращаемого результата может относиться к простым (неструктурируемым) данным;
в теле функции должен обязательно присутствовать оператор вида
<имя функции>:=<результат>
т.е. имени функции присваивается окончательный результат, вычисляемый в подпрограмме;
ни один из параметров функции не должен быть var-параметром, так как ни один из них не должен получать новое значение в теле функции.
Преимущество использования подпрограмм-функций - возможность тестировать и отлаживать их независимо от других модулей.
36. Подпрограммы-процедуры.Процедуры обработки событий
Необходимо помнить о следующих особенностях подпрограммы-процедуры:
Процедура в отличии от функции может возвращать не обязательно одно конкретное значение.
В заголовке процедуры отсутствует указание о типе возвращаемого значения.
Параметры var нужны процедуре, чтобы в ходе своего выполнения она могла изменять их значения.
Процедуры могут вообще не иметь параметров.
Все, что может сделать функция, можно осуществить с помощью процедуры.
Процедуры очень удобно использовать при решении задач, в которых выполняется обработка структурированных данных - массивов и строк. При этом необходимо помнить, что при описании формальных параметров нельзя задавать тип данных с указанием конкретной размерности массива или конкретной длины строки - для структурированных типов данных необходимо вводить пользовательское имя.
Например,
type mas=array[1..n] of integer;
type stroka=string[30];
var
a:mas;
fio, name:stroka;
procedure(var b:mas; n:integer); procedurе(var st:stroka,rez)
Во многих задачах возникает необходимость обрабатывать последовательности чисел, символов, строк, рядов.