Алгоритм. Требования, предъявляемые к алгоритму, страница 3

                                            ‘ условие  x < a  истинно (True)

       Else

             y = Cos(3 * x) ‘ вычисление значения функции  y,  когда

                                            ‘ условие  x < a  ложно (False)

       End  If

       MsgBox "x=" &  x  & "  y=" & y

End  Sub

 Пример 3   Вычислить  значение функции  при   b = 3

Sub сложное _ветвл ()

      Dim  b As Single, x As Single, y As Double

      b = Cells(2, 1)  'ввод значения  b из ячейки A2

      x = Val(InputBox("ввод  x"))

      If   x < 2  Then

             y = Abs(x)

      Else

             If  x < 10  Then  'вложенный  оператор  If

                    y = x ^ 3 - b

             Else

                    y = Sqr(x + b)

             End  If

      End  If

      Cells(3, 1) = x : Cells(4, 1) = y  'вывод  значения  аргумента  x

                                  'в ячейку  A3 и  значения  функции  y в ячейку A4

Знак  : объединяет несколько  операторов в одной  программной  строке

 
End Sub

Логические  операции

Not - отрицание, And – логическое  и, Or – логическое или  позво-ляют  объединять  несколько  условий  в одном  операторе If.

В выражениях, содержащих операции  разных  категорий, порядок их  выполнения следующий:

Арифметические  операции

Операции  отношения

Логические  операции

If  a>3And  a<8  Then  y = 0

Если  оба  условия 1 и 2  истинны, то выполнить оператор 3. Если хотя бы  одно условие ложно, то управление передается на следующую за Ifпрограммную строку.

If  a>0.1Or   b>5  Then  MsgBox “брак

Если хотя бы одно из условий 1 или 2  истинно, то выполнить оператор  3.

Если ни одно условие не выполняется, то управление передается на следующую за  Ifпрограммную строку.

If  x<0  And   y<0   Or  x>0  And   y>0  Then   k =k+1

Если  истинны условия  1 и  2  или  истинны  условия  3 и  4, то выполнить оператор 5. В противном случае управление передается на следующую за Ifпрограммную строку.

 Пример4      Определить, принадлежитли  точка С  с координатами (x,y) заштрихованной  области. Радиус R  известен.  

Во – первых:

Точка должна лежать внутри  окружности  радиуса  R.

=> Из уравнения окружности

x2 +y2 = R2

получаем  первое  условие:

.

Во –вторых:

Точка  должна  лежать  выше (над) прямой, уравнение  которой   y = x.

=> второе  условие:   .

Sub логич_операция ()

     Dim  R  As  Single, x  As  Single, y  As  Single

     R = Cells(2, 2)   ' ввод  значения  R из ячейки B2

     x = Val(InputBox("ввод  x"))  ' ввод  координаты  x

     y = Val(InputBox("ввод  y"))  ' ввод  координаты  y

     If   Sqr(x ^ 2 + y ^ 2) <= R   And   y >= x   Then

            MsgBox  "принадлежит"

      Else

            MsgBox  "не принадлежит"

     End If

End Sub

Оператор   выбора   Select  Case

применяется, когда в зависимоси  от значения некоторой переменной (или выражения), имеющего конечное множество допустимых значений, требуется  выполнять  разные  действия

 Пример 5 .        

Sub оператор_выбора ()

     Dim  к_инт  As  Integer ' к_инт - коэфф. интенсивности  труда

     к_инт  = InputBox (" ввести  к_инт")

     Select  Case  к_инт

          Case  Is < 3  ' если  к_ инт  меньше  3, то выполнить след. оператор

                 MsgBox " добавка  к зарплате  400 руб"

          Case  3 To 5   ' если  к_ инт  принимает  значения  диапазоне от  3

                               ' до  5 , то выполнить след. оператор

                 MsgBox " добавка  к зарплате  2000 руб"

          Case  6, 7   ' если  к_ инт  равен  6 или 7, то выполнить  след. оператор

                 MsgBox " добавка  к зарплате  5000 руб"

     End Select

End Sub

Циклы  с  заданным  числом  повторений. Оператор  цикла  For – Next

Пример 6 .    Вычислить  значение   функции   ,   при  x,

принимающим  значения  от  5 до 75  с  шагом   = 10,   a = 1,5

В блоке  3  задаем  начальное  значение  аргумента  x (параметра  цикла).

В блоке  4  вычисляем  текущее  значение  функции  y.

В блоке  6  задаем  закон  изменения  аргумента  x (параметра  цикла).

В блоке 7  проверяем – не  превысило ли  новое значение x  заданного граничного значения 75. Если  x 75 , управление передается на  начало цикла  и  вычисление  y  продолжается. Если  x > 75  производится выход из  цикла.

Параметр  цикла – это  переменная, значение  которой  изменяется  в  цикле при  каждом  повторении  вычислений  по  заданному  закону.

Число  повторений  цикла  определяется  по формуле:

Структура  программного  кода  цикла  с  For – Next

Заголовок  цикла

 
For  i = k1  To  k2   Step  h

  …………………

Тело  цикла

 
  …………………

  …………………

Конец  цикла

 
Next  i

i –параметр  цикла.

k1 и k2 – начальное и конечное значения  параметра  цикла i. Это  могут быть  константы, переменные  или  арифметические  выражения.

h– шаг,с которым  изменяется  параметр  цикла i. Шаг,  равный 1, не указывается.

Компьютер  интерпретирует  так: для i, принимающего  значения от  k1 до kс  шагомhвыполнять  все  действия  до Next.

Sub Цикл_For ()

      Dim  a  As Single, x  As Single, y  As Single

      Dim  i  As  Integer  ' i – номер  строки  электр. таблицы  Excel

      a = 1.5:  i = 1 

      For  x = 5  To  75  Step 10   ' задаются  значения  аргумента  x

            y = Log(a * x)

Cells(i, 1) = x: Cells(i, 2) = y:  i = i + 1 ' вывод  значений   

            ' аргумента  x  и  функции  y  соответственно  в ' столбцы  А  и  B  электр. таблицы

      Next x

End Sub

Цикл  с  разветвлением

Пример 7   Составить алгоритм и программу табулирования функции, построить график функции  на  рабочем листе Excel

 ,            x = 0,5        a = 3,7

Сначала  определим общий  интервал  построения графика функции

Для этого рассчитываем  количество точек, в которых  будем  вычислять значение функции  y  на  среднем  интервале:

Такое  же  количество точек  для  построения  графика должно быть получено и на двух крайних  интервалах  при  x < 4  и  при  x > 8. Таким образом, общий  интервал составит:

[−0,5;  12,5 ]

Вспомогательные  переменные  n, k, m  вводятся  для  организации  вывода  результатов в  виде  таблицы.