Здавалка
Главная | Обратная связь

Структурированный (разветвленный) IF



Среди условных операторов можно выделить структурированный, который предполагает проверку условий путём вложения.

5.1) Структурированный, короткий, простой IF.

В структурированном операторе содержится последовательная проверка вложенных условий.

Пример 7.

Вычислить r=ln(x+y+z), если x > 0, y > 0, z > 0.

Оператор условия запишется в виде:

IF x>0 then

IF y>0 then

IF z>0 then

R:=LN(X+Y+Z);

Пример 8.

Можно этот пример записать иначе коротким, простым IF с логическим выражением:

IF (x>0) and (y>0) and (z>0) then R:=LN(X+Y+Z);

Пример 9.

Вычислить r=x+y+z, если выполняется хотя бы одно из условий x>0, y>0, z>0. Оператор условия запишется в виде:

IF (x>0) or (y>0) or (z>0) then R:=(x+y +z);

В примерах 8, 9 логические выражения включают в себя логические операции.

5.2) Структурированный, полный, простой IF.

Пример 10.

Вычислить:

r=ln(x+y+z), если x>0, y>0, z>0;

r=ln (x+y)+ z, если x>0, y>0;

r=ln (x)+y+ z, если x>0, иначе r = x+y+z .

Оператор условия запишется в виде:

IF x>0 then

IF y>0 then

IF z>0 then r:=ln (x+y+z)

Else r:= ln (x+y)+z

Else r:= ln (x)+y+z

Else r:= x+y+z;

Вначале проверяются три условия. Если они выполняются, то вычисляется r=ln(x+y+z). Иначе выполняются первые два условия, а последнее не выполняется и z ≤ 0 (первое слово else относится к последнему условию). В этом случае вычисляется r=ln(x+y)+z.

Если из двух условий выполняется только первое, то вычисляется r=ln x+y+z (второе слово else относится ко второму условию) и в этом случае y ≤ 0. Последнее слово else относится к первому условию и в этом случае х ≤ 0. В этом случае

Операторы цикла

Оператор цикла с параметрами

Счетный оператор цикла FOR имеет структуру:

а) FOR i:=a TO b DO <оператор>;

Здесь FOR, TO, DO – зарезервированные слова (для, до, выполнить);

i – переменная цикла типа INTEGER;

a – начальное значение переменной цикла (тип INTEGER);

b – конечное значение переменной цикла (тип INTEGER);

<оператор> – произвольный оператор Турбо Паскаля.

Шаг изменения параметра цикла равен единице.

Алгоритм выполнения оператора цикла с параметрами при выполнении оператора FOR:

  1. вначале осуществляется присваивание i:=a;
  2. проверяется условие i > b; если это условие выполняется, то следует выход из цикла, иначе на пункт 3;
  3. выполняется тело цикла;
  4. счётчик увеличивается на единицу: i:=i + 1;
  5. переход на 2;
  6. при выполнении условия i > b цикл заканчивается.

Пример 1.

Найти сумму значений переменной цикла. Фрагмент программы с оператором цикла запишется в виде:

For i: =1 to 10 do

s:=s+i;

Writeln(‘s=’, s);

В примере 1 рассматривается простой оператор цикла.

Счётный оператор цикл FOR может иметь такую структуру:

б) FOR i:= b DOWNTO a DO <оператор>;

Замена зарезервированного слова TO на DOWNTO означает, что шаг изменения переменной цикла равен (-1).

Пример 2.

Найти сумму значений переменной цикла.

Фрагмент программы с оператором цикла запишется в виде:

For i: =10 downto 1 do

s:=s+i;

Writeln(‘s=’,s:8:3);

{Результат получится тот же, что и в примере 1}.

При работе с оператором FOR следует соблюдать ряд правил.

Правила оператора FOR.

  1. Нельзя войти в цикл, минуя оператор FOR.
  2. Нельзя изменять параметры цикла (a,b) внутри цикла.
  3. Параметры цикла и переменная цикла должны быть целыми.
  4. Шаг цикла может быть единица или минус единица.
  5. Естественное окончание цикла осуществляется при условии i > b.
  6. Из цикла можно выйти до естественного окончания цикла по условию.






©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.