Анимация
JavaScript


Главная  Библионтека 

0 1 2 3 4 5 6 7 8 9 10 11 12 13 [ 14 ] 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57

5. Функции пользователя с операторами условного перехода 45

В условном операторе допустимо использование блока операторов вместо любого из операторов. В этом случае условный оператор имеет вид:

If УСЛОВИЕ Then

БЛ0К 0ПЕРАТ0Р0В 1 Else

БЛ0К 0ПЕРАТ0Р0В 2 End if

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

If УСЛОВИЕ Then ОПЕРАТОР ИЛИ

If УСЛОВИЕ Then

БЛОК ОПЕРАТОРОВ End if

Отметим, что в операторе условия после Then можно разместить несколько операторов для того, чтобы все они выполнялись, если условие истинно. В этом случае они должны располагаться в одну строчку и быть разделены двоеточием, например:

If А > 5 Then А=А+5:В=В+А"2:С=С+В

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

If УСЛ0ВИЕ 1 Then БЛ0К 0ПЕРАТ0Р0В 1 Elself УСЛ0ВИЕ 2 Then

БЛ0К 0ПЕРАТ0Р0В 2

Elself УСЛ0ВИЕ 3 Then

Else

БЛОК ОПЕРАТОРОВ End If

В данном условном операторе выполняется БЛОК ОПЕ-PATOPOB i, если истинно УСЛОВИЕ 1, в противном случае выполняется БЛОК ОПЕРАТОРОВ.



Рассмотрим использование условного оператора и оператора Exit Function на примере функции пользователя, вычисляющей следующую формулу:

Тогда функция пользователя имеет вид:

Function Invers function(х)

If х = О Then Exit Function Else Invers function = 1/x End Function



6. функции пользователя с несколькими операторами условного перехода

,t<-h

21n(l + ,) + i±,,e(-l,0), 2 + t

(l+o>o.

Рассмотрим пример функции пользователя ([2]), вычисляющей значение следующей функции с тремя условиями.

Функцию Z можно вычислить с помощью следующей функции пользователя:

Function z(t)

If t <= -1 Then

z = (1 + Abs(t))/(1 + t + t " 2) " (1/3) If t >-l And t < 0 Then

z = 2 * Application.Ln(l + t 2) + (1 + Cos(t) " 4)/(2 + t) If t >= 0 Then z = (1 + t) (3/5) End Function

Функция Ln не является внутренней функцией VBA, поэтому для ее вызова нужно пользоваться конструкцией Application.Ln. Существует также другой способ вычисления функции z:

Function z(t)

If t <= -1 Then

z = (1 + Abs(t))/(1 + t + t " 2) " (1/3) Elself t < 0 Then z= 2 * Application.Ln(l + t 2) + (1 + Cos(t) " 4)/(2 + t) Else

z = (1 + t) - (3/5) End If End Function



0 1 2 3 4 5 6 7 8 9 10 11 12 13 [ 14 ] 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57