Программа табулирование разветвляющейся функции в V ВА
Private Sub CommandButton 1_ Click ()
Dim i As Integer
Dim j As Integer
Dim x As Single
Dim xn As Single
Dim xk As Single
Dim dx As Single
Dim g As Single
xn = InputBox (" Xn = ", "Ввод начального значения x ", -3, 8000, 2000)
xk = InputBox (" Xk = ", "Ввод конечного значения x ", 7, 8000, 1000)
dx = InputBox (" dX = ", "Ввод значения шага x ", 0.5, 8000, 2000)
i = InputBox (" i = ", "Ввод значения начала таблицы, строка i ", 5, 8000, 1000)
j = InputBox (" j = ", "Ввод значения начала таблицы, столбец j ", 5, 8000, 2000)
x = xn: Cells(i, j) = "X(vba)": Cells(i, j + 1) = "G1(vba)": Cells(i, j + 2) = "G2(vba)"
10 Cells(i + 1, j) = x
If x <= 0 Then
g = Sin(x)
Cells(i + 1, j + 1) = g
Else
g = Exp(-x)
Cells(i + 1, j + 2) = g
End If
x = x + dx
i = i + 1
If x > xk Then GoTo 20 Else GoTo 10
End Sub
Некоторые комментарии к программе:
– Применен условный оператор, у которого в частях Then и Else находятся по два оператора, поэтому по грамматическим требованиям необходим переход на другую строку и завершается оператор End If .
ТАБУЛИРОВАНИЕ ФУНКЦИИ, РАЗВЕТВЛЯЮЩЕЙСЯ БОЛЬШЕ, ЧЕМ ОДИН РАЗ
Выполнение этой лабораторной работы, также как и всех последующих связанных с табуляцией функций, целесообразно начинать с копирования предыдущей.
СКОПИРОВАТЬ ВЕСЬ ЛИСТ С ЛАБОРАТОРНОЙ РАБОТОЙ “ТАБУЛИРОВАНИЕ РАЗВЕТВЛЯЮЩЕЙСЯ ФУНКЦИИ” НА ЧИСТЫЙ ЛИСТ И НА НЕМ ПРОИЗВЕСТИ НЕОБХОДИМЫЕ ИЗМЕНЕНИЯ.
Лабораторная работа “Табулирование функции разветвляющейся больше, чем один раз” также состоит из двух частей:
|
|
– табулирование функции в Excel;
– табулирование функции в VBA.
Критерием правильности является совпадение полученных таблиц.
Однако, в связи с условием задачи спектр значений функции Z ( x ) формируется не как раньше в одном или в двух столбцах, а в трех, рис. 3.1.
Рис. 3.1
При этом в ячейки В6: B 12 вносится арифметическое выражение, соответствующее первой формуле задания, в ячейки С13: C 19 вносится арифметическое выражение, соответствующее второй формуле задания, а в ячейки D 20: D 26 вносится арифметическое выражение, соответствующее третьей формуле задания. Можно отобразить их разным цветом.
Именно эти три столбца ПОЛНОСТЬЮ используются для построения графика.
В ячейках E 6: E 26 записывается логическая функция ЕСЛИ, с помощью мастера функций fx .
Выполняется это следующим образом:
– выбрать ячейку E 6;
– включить мастер функций fx
– в появившемся окне рис. 3.2 мастера функций fx выбрать логическую функцию ЕСЛИ
Рис. 3.2
– в окне “Аргументы функции” рис. 3.3 в первом окне записать логическое выражение, соответствующее заданию, при этом справа, если выражение написано грамматически правильно, появляется результат “= истина”.
|
|
Рис. 3.3
В самом деле, значение ячейки А6 равно -3, что меньше нуля. Во второе окно записывается арифметическое выражение соответствующее первой формуле задания, в третье – логическую функцию,
Если ( И (A6>0;A6<=3,5);exp(-A6);ln(A6)),
соответствующее второй и третьей частям задания. Грамматическая правильность записи арифметических выражений подтверждается числовыми результатами, сформированными на основании вычислений арифметических выражений при значении ячейки А6 равном -3. Эти результаты появляются справа от окон;
– нажать ОК;
– скопировать формулу ячейки E 6 в диапазон E 6: E 26;
Числовые значения ячеек диапазона E 6: E 26 должны совпадать с числовыми значениями ячеек диапазонов B 6: B 12 , C 13: C 19 и D 20: D 26.
Можно не обращаться к мастеру функций fx , а просто записать в ячейку E 6 выражение
=ЕСЛИ(A6<=0;SIN(A6);ЕСЛИ(И(A6>0;A6<=3,5);EXP(-A6);LN(A6)))
а затем скопировать от E 6 до E 26 включительно.
ПРОГРАММНЫЙ МОДУЛЬ VBA ИЗ ЛАБОРАТОРНОЙ РАБОТЫ “ТАБУЛИРОВАНИЕ РАЗВЕТВЛЯЮЩЕСЯ ФУНКЦИИ” СКОПИРОВАТЬ В МОДУЛЬ ОБЪЕКТА CommandButton ЛАБОРАТОРНОЙ РАБОТЫ “ТАБУЛИРОВАНИЕ ФУНКЦИИ, РАЗВЕТВЛЯЮЩЕЙСЯ БОЛЬШЕ, ЧЕМ ОДИН РАЗ”.
Внести соответствующие изменения.
Дата добавления: 2019-03-09; просмотров: 469; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!