Система программирования Турбо Паскаль. Воробьева А.П - 32 стр.

UptoLike

Составители: 

65
5.3. Оператор выбора
При многократном вложении условных операторов программа
становится громоздкой и ее трудно понять. Считается, что число
вложений не должно превышать двух-трех. При большем числе
вложений рекомендуется использовать оператор выбора
case.
Общий вид записи
case <селектор> of
<список констант выбора 1>: <оператор 1>
;
…………………………………………………….
<список констант выбора n>: <оператор n>
;
end
;
Селектор
это выражение целого или символьного типа.
Константы выбора всевозможные значения селектора. Кон-
станты выбора в списке перечисляются через запятую.
Работа оператора
По вычисленному значению селектора выбирается для испол-
нения оператор той строки, в списке которой содержится кон-
станта, равная значению селектора. После выполнения выбранно-
го оператора управление передается на конец оператора
case.
Следующим в программе выполняется оператор, стоящий за опе-
ратором выбора.
Пример 1. Написать оператор выбора для вычисления величи-
ны y по формулам:
=
==
=
=
.4если,
,3или2если,2
,1если,
ne
nnx
nx
y
x
Оператор выбора имеет следующую запись:
case n of
1: y := x;
2, 3: y := 2 * sqrt(abs(x));
4: y := exp(x);
end;
66
Графическая интерпретация оператора
В блок-схемах оператору case соответствует структура ВЫБОР.
Для приведенного выше примера 1 эта структура выглядит
следующим образом:
Замечание. Если в строке выбора необходимо записать не-
сколько операторов, то их заключают в операторные скобки
begin...end.
Пример 2. Вычислить значение y.
<
<
<
<
=
.54если,tg
,43если,ln
,32если,
,21если,sin
xx
xx
xe
xx
y
x
Если значение x не принадлежит рассматриваемым проме-
жуткам, то вывести на экран соответствующее сообщение.
В задаче переменная x является вещественной и не может ис-
пользоваться в качестве селектора оператора
case. Введем новую
переменную целого типа n, которой присваивается целая часть
значения x (
n := trunc(x);). Тогда программа решения данной за-
дачи с использованием оператора выбора может быть составлена
следующим образом.
Анализ
селектора
n
n=4
n=2 или n=3
xy 2:=
x
ey =:
n=1
                    5.3. Оператор выбора                         Графическая интерпретация оператора
   При многократном вложении условных операторов программа          В блок-схемах оператору case соответствует структура ВЫБОР.
становится громоздкой и ее трудно понять. Считается, что число      Для приведенного выше примера 1 эта структура выглядит
вложений не должно превышать двух-трех. При большем числе        следующим образом:
вложений рекомендуется использовать оператор выбора case.
Общий вид записи
      case <селектор> of                                                         Анализ
         <список констант выбора 1>: <оператор 1>;                              селектора
         …………………………………………………….                                                      n
         <список констант выбора n>: <оператор n>;
      end;                                                                           n=1
   Селектор – это выражение целого или символьного типа.
   Константы выбора – всевозможные значения селектора. Кон-
станты выбора в списке перечисляются через запятую.                                  n=2 или n=3
                                                                                                    y := 2 x
Работа оператора
   По вычисленному значению селектора выбирается для испол-                          n=4
нения оператор той строки, в списке которой содержится кон-                                          y := e x
станта, равная значению селектора. После выполнения выбранно-
го оператора управление передается на конец оператора case.         Замечание. Если в строке выбора необходимо записать не-
Следующим в программе выполняется оператор, стоящий за опе-      сколько операторов, то их заключают в операторные скобки
ратором выбора.                                                  begin...end.
   Пример 1. Написать оператор выбора для вычисления величи-        Пример 2. Вычислить значение y.
ны y по формулам:
                                                                                            ⎧sin x, если 1 ≤ x < 2,
                       ⎧ x,   если n = 1,                                                   ⎪ −x
                       ⎪⎪                                                                   ⎪e , если 2 ≤ x < 3,
                                                                                        y=⎨
                   y = ⎨2 x , если n = 2 или n = 3,                                         ⎪ln x, если 3 ≤ x < 4,
                        ⎪ x                                                                 ⎪tg x, если 4 ≤ x < 5.
                        ⎪⎩e , если n = 4.                                                   ⎩
                                                                     Если значение x не принадлежит рассматриваемым проме-
  Оператор выбора имеет следующую запись:                        жуткам, то вывести на экран соответствующее сообщение.
                  case n of                                          В задаче переменная x является вещественной и не может ис-
                     1: y := x;                                  пользоваться в качестве селектора оператора case. Введем новую
                     2, 3: y := 2 * sqrt(abs(x));                переменную целого типа n, которой присваивается целая часть
                     4: y := exp(x);                             значения x (n := trunc(x);). Тогда программа решения данной за-
                  end;                                           дачи с использованием оператора выбора может быть составлена
                                                                 следующим образом.

                                65                                                             66