Читайте также:
|
|
1. ARIS - моделирование бизнес-процессов, 3-е издание Август-Вильгельм Шеер – 224 с.
2. Тельнов Ю.Ф. Реинжиниринг бизнес-процессов. – М.: Финансы и статистика, 2004. – 320с.
3. http://www.betec.ru/secure/index.php?id=4&sid=10&ti
ОПЕРАТОРЫ ЦИКЛА
Для составления программы циклической структуры используются операторы цикла for, repeat, while.
Оператор цикла for используется, когда известно число повторений. При этом различают две формы записи:
1. Оператор с организацией счета при изменении параметра цикла от начального (меньшего) значения до конечного (большего) значения этого параметра цикла. Такой оператор цикла имеет вид:
for k: = nz to kz do s;
2. Оператор с организацией счета при изменении параметра цикла от начального (большего) значения до конечного (меньшего) значения этого параметра цикла. Такой оператор цикла имеет вид:
for k: = nz downto kz do s;
где k — параметр цикла (целочисленная переменная); nz, kz — выражения, задающие соответствующее начальное и конечное значения параметра цикла; s — простой или составной оператор.
Оператор цикла выполняется следующим образом. Параметру цикла k присваивается начальное значение nz. Затем управление передается в тело цикла и выполняется оператор s, после выполнения которого параметр цикла меняет свое значение на единицу (шаг изменения параметра цикла). При этом шаг равен +1, если используется оператор цикла с ключевым словом to (случай 1), а если используется оператор цикла с ключевым словом downto (случай 2), то шаг равен –1. Далее измененное значение параметра цикла сравнивается с конечным значением kz и, если параметр цикла не превышает kz (случай 1) или превышает kz (случай 2), то управление передается в тело цикла и выполняется оператором s; в противном случае осуществляется выход из цикла.
Рассмотрим фрагменты записи операторов цикла:
1) y: = 0; for i = 3 to 5 do y = y + 1;
2) y: = 0; for i = 12 downto 6 do y = y + 1.
В результате выполнения первого оператора цикла параметр цикла 1 будет изменятся от начального значения i = 3 до конечного значения i = 5 с шагом, равным +1, причем по окончании цикла y = 3. При выполнении второго оператора цикла параметр цикла y будет изменятся от начального значения i = 12 до конечного значения i = 6 с шагом, равным . По окончании цикла y = 7.
Пример 1. Найти составить программу с применением оператора цикла for.
program sumfor;
var x,y: real;
i, n: integer;
begin
writeln (‘ Ввести n, x’);
read (n, x);
y: = 0;
for i: = 1 to n do
y: = y + cos (i + sqr ( x ) / 4 );
writeln (‘ n = ‘, n, ‘ ‘, ‘ x = ‘, x);
writeln (‘ y = ‘, y);
end.
Оператор цикла while позволяет организовать цикл, количество повторений которого зависит от включенного в него условия, т.е. цикл с неизвестным числом повторений. Этот оператор имеет вид:
while lv do s;
где lv — логическое выражение; s — простой или составной оператор.
Выполнение оператора начинается с проверки выражения lv. Если логическое выражение имеет значение true, то выполняется оператор s до тех пор, пока выражение lv не примет значение false. В этом случае уравнение передаётся оператору, следующему за оператором s. Если же выражение lv принимает значение false при первоначальной проверке, то оператор s не выполняется ни разу. При этом чтобы выйти из цикла, внутри него нужно изменить значения переменных, входящих в логическое выражение. Иначе оператор цикла будет выполняться бесконечное число раз.
Пример 2. Используя условия примера 1, программу запишем в виде:
Program sumwhl;
var x, y: real;
i, n: integer;
begin
writeln (‘ ВВЕСТИ n, x’);
read (n, x);
y:= 0;
i:=1;
while i <= n do
begin {открываем операторные скобки}
y=y + cos (i+ sqr ( x )/ 4 );
i:=i+1;
end; {закрываем операторные скобки}
writeln (‘n =’, n,’ ‘,’ x = ‘,x);
writeln (‘y =’,y);
end.
Оператор цикла repeat также позволяет организовать цикл с неизвестным числом повторений. Такой оператор имеет вид:
repeat s
until lv,
где s — простой или составной оператор; lv — логическое выражение.
Выполнение оператора repeat начинается с вычисления оператора s и продолжается до тех пор, пока не выполняется lv, т. е. когда логическое выражение примет значение false (ложь). Из этого следует, что проверка lv проводится после каждой итерации и в случае принятия lv значения true (правда) осуществляется выход из цикла. При использовании составного оператора s операторные скобки (begin и end) не требуются. Кроме того, оператор, стоящий перед словом until, не имеет после себя точки с запятой.
Дата добавления: 2014-12-19; просмотров: 21 | Поможем написать вашу работу | Нарушение авторских прав |