Основы современных компьютерных технологий

         

Безусловные операторы


Оператор присваивания имеет вид:

:=

В качестве имени переменной может использоваться как простая переменная, так и переменная, инициализирующая обращение к элементу списка. В операторе присваивания допускается использовать знак = вместо :=.

Оператор безусловного перехода:

GОТО

При выполнении оператора GOTO осуществляется передача управления оператору, помеченному меткой:

Оператор выхода из процедуры:

RETURN Оператор вызова процедуры:

САLL ( ;)

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

FOR :=

ТО [ STEP ]

NEXT [ ]

349

Здесь и определяют соответственно начальное и конечное числовые значения переменной цикла, a STEP задает значение шага изменения переменной цикла, при отсутствии части STEP значение шага равно 1.

Внутри тела цикла могут использоваться вложенные циклы. При организации таких циклов применяются оператор продолжения CONTINUE и оператор выхода EXIT. Оператор CONTINUE имеет вид:



CONTINUE []

При выполнении данного оператора управление передается на оператор NEXT текущего цикла либо оператору NEXT объемлющего цикла, параметром которого является переменная, указанная в операторе CONTINUE.

Оператор выхода EXIT задается в виде:

EXIT []

и инициирует передачу управления оператору, расположенному за оператором NEXT текущего цикла, либо за оператором NEXT объемлющего цикла, параметром которого является переменная, указанная в операторе EXIT.

Условный оператор

Условный оператор задается в следующей форме:

IF ЛОГИЧЕСКОЕ ВЫРАЖЕНИЕ> THEN [ЕLSЕ]

Примеры операторов:

  • r = sqrt(x"2+yA2)
  • 'x[i][j] = 0
  • RETURN
  • Loop:
  • GOTO loop_end
  • loop_end: NEXT
  • CALLquicksort('Age,'Height,'Weight;'Fact)
  • = ptor(r1 ,theta1) + ptor(r2,theta2)
  • IFx>=0 THEN y=sqrt(x)
  • IF Iog(x)>a THEN y=0 ELSE y='unknown
  • IFx[i][j]=0 THEN return ELSE goto loop
  • IF evltd('x, 1,0) THEN y=x^2 ELSEy=z^2
  • FOR i = j TO k
  • x[i] = (k-j)*i

    NEXT i

    Примеры описания и использования процедур:

    ================= PROCEDURE FUNCTION: Simpson =================

    Comment: Определенный интеграл, метод Симпсона


    Parameter Variables:

    350

    Input Variables: fun,a,b,n Output Variables: value

    S Statement---------------

    ; Обозначения: fun - имя правила, процедуры, списка или встроенной

    ; функции определения подынтегрального выражения

    ; а,b - верхний и нижний пределы

    ; n - число шагов интегрирования (четное число)

    ; value - значение определенного интеграла

    ; Описание: Стандартный метод численного интегрирования

    ; с полиномиальной аппроксимацией второй степени

    ; подынтегрального выражения

    if mod(n,2)<>0 then call errmsg("odd numbers of intervals, must be even")

    h = (b-a)/n

    k=1

    value = 0

    for i = 2 to n

    x = x + h

    k = 3-k

    value = value + k*apply(fun,x)

    next i

    value = (2*value + apply(fun,a) + apply(fun.b)) * h/3

    Рис 25 6 Описание и использование процедуры Factorial

    351

    В приведенном примере apply представляет собой встроенную функцию, которая позволяет использовать ее аргумент (fun) для ссылки к имени функции, которая будет вычисляться с аргументом х. Конкретное значение fun определяется при обращении к процедуре-функции Simpson.

    Пример описания и использования процедуры-функции для решения задачи вычисления 4! приведен на рис. 25.6.

    В окне ТК Solver после решения задачи показаны три панели: Variable Sheet с переменными п1 (входная переменная типа Input с значением 4) и fact (выходная переменная типа Output с результирующим значением 24); Rule Sheet с правилом вычисления значения fact, содержащим обращение^ процедуре-функции Factorial; Procedure: Factorial с описанием процедуры-функции Factorial, предназначенной для вычисления п!.

    352

    343 :: 344 :: 345 :: 346 :: 347 :: 348 :: 349 :: 350 :: 351 :: 352 :: Содержание


    Содержание раздела